11

我必须使用 Git 并且想要撤消一个提交,该提交是提示之前的一些提交。在 Hg 中是hg backout. Git中的模拟命令是什么?

(我在发布此内容之前就已经放弃了,并且没有看到模拟命令。)

4

3 回答 3

13

要恢复某些特定的提交,您可以使用:

git revert <commit_hash>

这将添加一个恢复提交的新commit_hash提交。

如果你想通过重写历史来擦除特定的提交,你可以这样做:

git rebase -i <commit_hash>^

这将打开一个编辑器。只需删除包含 commit_hash要擦除的行,保存文件并退出编辑器。变基将删除commit_hash提交。

于 2012-01-02T17:21:06.100 回答
8

听起来您需要 git revert :) 或者,如果您想删除该提交曾经发生过的所有证据,您可以执行 git rebase 来摆脱它。但是,如果您已经在可见的地方发布了该提交,请小心,因为您可能会给其他人带来问题。

这是一个谈论还原的链接:

http://gitready.com/intermediate/2009/03/16/rolling-back-changes-with-revert.html

或者,只需 Google 获取手册文档。

于 2012-01-02T16:28:18.687 回答
3

这里维护了官方的 Git 和 Hg 等效命令:

https://www.mercurial-scm.org/wiki/GitConcepts#Command_equivalence_table

等价hg backoutgit revert

于 2012-01-02T21:21:00.193 回答