git命令reset和revert的区别

简介

git reset命令:将代码重置到指定版本,并抹去指定版本之后的所有提交记录;
适用场景:如果想恢复到之前的某个版本,并且那个版本之后提交的版本都不要了,则可使用git reset命令。

git revert命令:反做某一个版本,以达到撤销该版本修改的目的。
适用场景:如果我们想撤销之前的某一版本,但是又想保留这个版本之后的版本,则可以使用git revert反做指定版本。

从英文字面上理解:
reset:重置
revert:恢复、还原

git reset命令

将代码重置到指定版本,并抹去指定版本之后的提交记录;
命令:
git reset --hard commit_id

示例:将代码重置到commit_1版本,并且不保留之后提交的commit_2和commit_3版本。
如下图示:

git-reset.pnggit-reset.png

(1)将代码重置至指定版本:
git reset --hard commit_id

(2)将变更强行推送至远程仓库:
git push -f

git revert命令

反做某一个版本,以达到撤销该版本修改的目的。

命令:
git revert commit_id

示例:如果我们想撤销commit_2,但又想保留commit_3版本,则可以对commit_2执行反向操作。
如下图示:

git-revert.pnggit-revert.png

Git
最后修改于:2023年09月23日 00:37

添加新评论