我正在使用Mercurial来读取和调试复杂项目,我对项目的修改可以分为不同的文件组.例如,如果我修改了四个文件
src1.cc src1.hh src2.cc src2.hh
Run Code Online (Sandbox Code Playgroud)
显然我可以将它们分成两个文件组,例如group src1包含'src1.cc src1.hh',group src2包含'src2.cc src2.hh'.
我想知道我是否可以通过像'hg revert group-name-alias'之类的简单命令来恢复一组文件,而不是列出该组的所有文件名,如果我修改了很多文件,这是一个很糟糕的主意.
任何帮助真的很感激!
根据我对您的用例的理解,您可以:
在hg revert命令中使用模式.这意味着您可以运行hg revert src1*以还原所有第一组.
但最有可能的是,你的东西在子文件夹中,幸好你可以为revert命令指定一个父文件夹.
所以说,你的文件是真的很喜欢:foo/src1.cc,foo/src1.hh,
bar/src2.cc,bar/src2.hh.在这种情况下,hg revert bar假设您位于顶部文件夹中,则可以还原所有第二组.如果您已经在该bar文件夹中,则可以运行hg revert ..
您可以指定多种模式.
如果每个"文件组"也是不同的工作单元(不同的错误修复或功能),请使用Mercurial队列.但是,如果所有文件属于同一工作单元,则不太理想.
不。据我所知,Mercurial 没有对文件进行分组的机制。
[alias] revert-group-name = revert src2.cc src2.hh您可以使用别名( in )进行一些欺骗~/.hgrc,但别名只能是前缀,并且不能执行变量扩展。
如果您的文件足够简单,您可以使用 shell 通配符 ( hg revert src2*) 或 shell 变量 ( GROUP_NAME="src2.cc src2.hh", then hg revert $GROUP_NAME)。
您还可以考虑编写一个小型 Mercurial 扩展。如果您了解 Python,那么它们不会花费很长时间(我的第一次大约花了 30 分钟)。
| 归档时间: |
|
| 查看次数: |
3744 次 |
| 最近记录: |