如何使用给定的SHA还原提交?我只想删除给定SHA的更改,但要保留在其之前和之后所做的所有提交。我只想删除指定SHA的更改。
我已经阅读过Revert to a commit by a SHA hash in Git?,我的理解是重置在我想要还原的SHA之后进行的所有提交。这不是我想要的方式。
如何使用给定的SHA还原提交?我只想删除给定SHA的更改,但要保留在其之前和之后所做的所有提交。我只想删除指定SHA的更改。
我已经阅读过Revert to a commit by a SHA hash in Git?,我的理解是重置在我想要还原的SHA之后进行的所有提交。这不是我想要的方式。
git revert <commit hash>
来尝试撤消提交所做的更改。这不会从历史记录中删除提交,只是撤消它并作为新提交进行更改。换句话说,您将仍然拥有第一个提交在历史记录中,并且分支头部会有一个额外的提交,它是原始提交的有效反向操作。git rebase
从历史记录中完全删除原始提交。有关详细信息,请参见此SO帖子。git revert <commit>
会尝试还原单个提交。
它不会更改任何其他提交。您可能会被git reset
所困惑,因为它完全是另一回事。
更多信息请参见:https://www.kernel.org/pub/software/scm/git/docs/git-revert.html