美文网首页
Git reset 和 revert 的区别

Git reset 和 revert 的区别

作者: ToNext | 来源:发表于2017-11-25 12:02 被阅读21次

reset 和 revert 的区别

git reset

reset
git reset [--soft | --mixed | --hard
  • - -mixed

    工作区不变,只是将版本库和暂存区 信息回退到了某个版本.

  • - -soft

    工作区不变,只回退到commit 信息到某个版本.暂存区不变,直接commit即可再次提交.

  • - -hard

    工作区和暂存区都会回退到某个版本.(本地代码仓库源码)

    如果在远程push代码以后,也使用 reset --hard <commit...> 回退代码,这样你线上的代码并没有变,当你再次提交的时候很可能会出现代码冲突问题。


git revert

git revert [--[no-]edit] [-n] [-m parent-number] [-s] [-S[<keyid>]] <commit>…​
git revert --continue
git revert --quit
git revert --abort

git revert 用法是撤销某次操作,此次操作之前和之后的commit和history都会保留,并且把这次撤销
作为一次最新的提交,将需要revert的版本的内容再反向修改回去,版本会递增,不影响之前提交的内容。

  • git revert HEAD

    撤销上一次提交

  • git revert HEAD~

    撤销上上一次提交

  • git revert commit ...

    撤销指定的版本,撤销也会作为一次提交进行保存

相关文章

网友评论

      本文标题:Git reset 和 revert 的区别

      本文链接:https://www.haomeiwen.com/subject/qsfcbxtx.html