2009-12-28 97 views
10

很多时候我对存储库中的文件进行了两次不同的更改,我希望将这些更改视为两次连续的提交。仅提交Mercurial中的一些文件

例如,在储存库

  • prog.c中
  • prog.h
  • 的README.txt

虽然修复错误prog.cprog.h,我在README.txt固定一个错字。现在我想用自己的提交消息来提交更改为prog.c,之后更改为README.txt

在Git中,我可以很容易地做到这一点与索引

git add prog.c prog.h 
git commit -m 'bug #1234' 
git commit README.txt -m 'some typos fixed' 

怎样做,在水银的最佳方式是什么?

澄清:我使用(编辑之前)一个玩具的例子,其中每个变更集跨越一个单一的文件。但是我想要一般答案,当每个变更集中有很多文件时我应该怎么做。

回答

19
hg commit -m "bug #1234" prog.c prog.h 

然后

hg commit -m "some typos fixed" README.txt 
+0

如果Bug#1234的文件超过一个,该怎么办? – 2009-12-28 14:41:18

+2

hg commit -m“bug#1234”prog.c prog.h – Jerome 2009-12-28 14:51:05

+9

如果您想要除README.txt以外的所有文件:hg commit -m“bug#1234”-X README.txt – Jerome 2009-12-28 14:53:24

2

我爱这个目的crecord善变的扩展:它给我的文件文件(逐块,和逐行)在究竟我想在这个控制承诺。

+3

或者随同mercurial一起提供并在Windows上工作的原始记录扩展。 – pmezard 2009-12-28 17:25:59

相关问题