如何仅提交对文件所做的部分更改?

Vis*_*hal 3 mercurial mercurial-commit

我想分别提交同一文件的不同部分。

我想首先提交包含消息的第 2 行(变更集 1)和包含消息的第 4 行(变更集 2)。我该怎么做?

我正在使用 Mercurial 分布式 SCM(版本 3.5.2+20151001)

Cra*_*aig 5

您可以使用交互式提交选项来完成此操作。

首先将以下内容添加到 ~/.hgrc 文件中:

[ui]
interface = curses
Run Code Online (Sandbox Code Playgroud)

然后使用:

hg commit -i
Run Code Online (Sandbox Code Playgroud)

这将告诉 commit 允许您交互式地选择哪些文件或(通过深入到文件中)选择子文件更改。

您可以多次使用此功能,选择文件中的各个更改。

注意:如果不添加 .hgrc,hg commit -i 会询问您每个文件,并且不允许您深入了解和选择单个文件更改。

交互式选项也在其他 Mercurial 命令中实现,例如恢复(您可以选择要恢复的更改)和新的实验性修改命令。它非常强大且易于使用。