Git Revert Commit – 如何撤消最后一次提交

2021-09-01 10:14:56 浏览数 (4950)

要怎么撤销最后一次提交?有两种方法可以撤消上次提交。

revert命令

revert命令将创建一个提交,该提交还原所针对的提交的更改。

可以使用它来恢复最后一次提交,如下所示:

git revert <commit to revert>


在图像中,每个圆圈代表一次提交。

reset命令

还可以使用该reset命令撤消上次提交。

但要小心——它会改变提交历史,所以你应该很少使用它。

它会将 HEAD(工作分支)移动到指定的提交,并在之后丢弃任何内容:

git reset --soft HEAD~1

--soft选项 意味着您不会丢失 可能拥有的未提交的更改。

在图像中,每个圆圈代表一次提交。

如果要重置为最后一次提交并删除所有未暂存的更改,可以使用以下--hard选项:

git reset --hard HEAD~1

这将撤消最新的提交,但也会撤消任何未提交的更改。

在图像中,每个圆圈代表一次提交。

应该使用reset还是revert?

reset只在被重置的提交, 存在于本地时才使用。

此命令会更改提交历史记录,并且可能会覆盖远程团队成员所依赖的历史记录。

revert 而是创建一个新的提交来撤消更改,因此如果要恢复的提交已经被推送到共享存储库,最好使用revert,因为它不会覆盖提交历史。