2012-01-02 36 views

回答

7

这听起来像你需要的git恢复:)另外,如果你想删除所有证据表明,提交发生过,你可以做一个git rebase来摆脱它。但要小心,如果您已经发布了可见的地方,您可以为其他人创建问题。

这里谈论还原链接:

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

或者,只是谷歌为手动文档。

+2

我喜欢duckduckgoing在谷歌上搜索。 – 2012-01-02 16:43:20

+0

大声笑不明白为什么不:) – 2012-01-02 16:44:11

+3

如果你想完全摆脱n提交的头部,你可以选择'git rebase':'git reset --hard HEAD〜n' – fge 2012-01-02 17:05:57

12

要恢复一些具体的承诺,你可以使用:

git revert <commit_hash> 

这将添加一个新的提交后归还commit_hash提交。

如果你想删除一个特定的承诺将通过改写历史, 你可以这样做:

git rebase -i <commit_hash>^ 

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