Git:如何还原还原

  • 本文关键字:还原 何还原 Git git
  • 更新时间 :
  • 英文 :


这是我目前的情况。

我错误地合并了一个包含垃圾的pull请求。

所以我用git revert -m 1 <sha of commit> 还原了它

现在我希望撤消该恢复,但这次只选择正确的更改

请问我该怎么做?

感谢

在git中还原也是一种提交。因此,您可以简单地恢复恢复为常规提交:

git revert <revert_you_want_to_undo_sha1>

您可以使用git reset来删除错误的提交(包括恢复)。

假设你的历史看起来像:

good -> good -> good -> rubbish -> revertRubbish

你可以简单地git reset HEAD~2使您的版本历史看起来像:

good -> good -> good 

说,如果它比这更复杂

good1 -> good2  -> rubbish -> good3 -> good4 -> revertGood4 -> revertGood3 -> revertRubbish

你可能需要做一些类似的事情:

git reset HEAD~6  //Deletes last 6 commits
git cherry-pick good3
git cherry-pick good4

以及由此产生的历史

good1 -> good2  -> good3* -> good4*

星号表示代码更改将是相同的,只是使用了与原始提交不同的哈希。

最新更新