在Mercurial中撤消上一个addremove?

时间:2011-05-31 05:30:38

标签: mercurial

我打字

$ hg addremove

但后来意识到某些文件不应该是提交的一部分。我应该做的是将这些文件添加到.hgignore,然后运行addremove和commit。

有没有办法解决这个问题?

2 个答案:

答案 0 :(得分:15)

如果你还没有提交,只需使用hg forget fileToForget或使用Tortoise删除文件。

如果您已经提交并且您不介意将文件作为历史记录的一部分,请忘记它们并再次提交。

如果您不希望它们成为存储库历史记录的一部分,并且如果提交它们是您最后一次操作,则可以尝试回滚(使用hg rollback或进入恢复菜单在乌龟)。您将不得不忘记该文件,然后再次提交

如果您处理的文件太多,可以尝试通过获取所有已添加文件的列表,忘记它们,修改.hgignore并再次执行addremove来自动完成任务。 / p>

powershell的第一步示例,没有提交

hg status --added --no-status | foreach-object {hg forget $_};

答案 1 :(得分:-1)

要撤消 addremove ,您还没有提交,只需运行:

$ hg revert --all