在 Mercurial 中仅提交部分文件
很多时候,我对存储库中的文件进行两次不同的更改,我希望这些更改被视为两次连续提交。
例如,在存储库
- prog.c
- prog.h
- README.txt
中修复 prog.c
和 prog.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'
在 Mercurial 中做到这一点的最佳方法是什么?
澄清:我(在编辑之前)使用了一个玩具示例,其中每个变更集跨越一个文件。但我想要一般答案,当每个变更集中有很多文件时我应该做什么。
Many times I'm making two different changes to files in my repository, I want those changes to be treated as two consecutive commits.
For example, in repository
- prog.c
- prog.h
- README.txt
While fixing a bug prog.c
and prog.h
, I fixed a typo in README.txt
. Now I want to commit the change to prog.c
with its own commit message, and the change to README.txt
afterwards.
In git, I could easily do that with the index
git add prog.c prog.h
git commit -m 'bug #1234'
git commit README.txt -m 'some typos fixed'
What's the best way to do that in Mercurial?
Clarification: I used (before the edit) a toy example where each changeset spans over a single file. But I want the general answer, what should I do when there are many files in each changeset.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
然后
then
为此,我喜欢 crecord Mercurial 扩展:它让我可以逐个文件(逐个块、逐行)控制我在此提交中想要的内容。
I LOVE the crecord mercurial extension for this purpose: it gives me file by file (and chunk by chunk, and line by line) control over what exactly I want in this commit.