在 Mercurial 中仅提交部分文件

发布于 2024-08-16 04:25:07 字数 578 浏览 2 评论 0原文

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

例如,在存储库

  • 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'

在 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

木森分化 2024-08-23 04:25:07
hg commit -m "bug #1234" prog.c prog.h

然后

hg commit -m "some typos fixed" README.txt
hg commit -m "bug #1234" prog.c prog.h

then

hg commit -m "some typos fixed" README.txt
明月松间行 2024-08-23 04:25:07

为此,我喜欢 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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文