2010-04-18 18 views
33

我输入了hg add,而我是mercurial的全新产品,这样做的结果是一堆dll的exe的pdb's etc都被添加了 什么都没有提交,我基本上想撤销添加。 汞文档忘了是不是很清楚不知道这是要我要 如何先下一撤消附加承诺如何取消添加尚未提交的文件?

我确实有需要加入一些真正的文件,以便以后我可以撤消添加I将使用添加与排除标志
谢谢

+0

您也可以使用'.hgignore'文件,以防止不小心将某些类型的文件未来也是如此。 – Amber 2010-04-18 08:46:09

回答

43

退房this mercurial tip。要引用链接 - 如果您不小心添加了文件,撤消该操作的方式(将其状态从A更改为?或未知)将恢复为hg。例如,如果你只是跑汞添加并意识到你不想要的文件FOO或酒吧由水银跟踪:

hg revert foo bar 
+0

+1。不过,如果你也提供了命令,本来会更好。 – 2010-04-18 11:08:22

+2

我不喜欢重复一些已经写好的东西(专业的死亡我猜:-)) - 这个命令现在被添加了。 – 2010-04-18 11:15:45

10

无论revertremove可用于未添加尚未COMMITED东西。但是,它们也有其他用途,为了清晰起见,hg forget在1.3中被(重新)添加了,尽管它的名字可能更容易记住。这几类情况

+8

“,尽管它的名字可能更容易记住。”...! – Matt 2012-01-24 15:31:45

-1

两个小技巧:

  • 如果一切都没有来过这个COMMITED,只是删除.hg与汞初始化开始。
  • 如果你对存储库做了一些糟糕的事情,并且似乎无法弄清楚如何撤消它((和hg update -C或者全部恢复都不会修复),请考虑在最后一个位置克隆存储库。
1

如果您使用的是类Unix系统,我认为最好的办法是运行

hg status -an0 | xargs -0 hg revert

相关问题