工作目录中的Mercurial Unstage特定文件

时间:2011-03-29 17:54:16

标签: mercurial

我有一个未提交的变更集。我想提交一些更改,但不提交一些文件(比如在git中取消暂存文件)。这可以用mercurial完成吗?

3 个答案:

答案 0 :(得分:9)

使用-X hg commit选项排除某些文件。您可以在命令行上多次指定它。例如,

hg commit -X path/to/unwanted/file -X path/to/another/file

答案 1 :(得分:7)

您可以传递要提交到hg commit的文件列表,例如hg commit -m msg file1 file2 ...

答案 2 :(得分:4)

是的!你有两个选择。

  1. 只提交一些文件。

    如果您提供文件名作为hg commit的参数,则只会提交这些文件。如果我有以下hg status

    M foo.txt
    M bar.txt
    

    我可以运行hg commit foo.txt仅提交对foo.txt的更改,并将更改保留在bar.txt中,以便稍后提交。

  2. 使用record扩展名。

    Record extension将Mercurial行为提供给git的索引,让您只提交一些修改补丁(如git add --patch)。有关详细信息,请参阅文档。