美文网首页
2018-06-16 git revert git reset

2018-06-16 git revert git reset

作者: 饥人谷_TIFOSI | 来源:发表于2018-06-16 13:57 被阅读0次

    git revert与git reset最大的不同是,git revert 仅仅是撤销某次提交。

    首先要找到对应的版本号:git log


    image.png

    日志显示了多个commit 的历史,commit后面跟的就是版本号(一长串字母加数字组合)

    1. git reset --hard xxx
      当输入:git reset --hard 2773bfdac15f700cdc2d7ab96e66a6991a986f8d

      我们得到 image.png
      再输入 git log 时:
      image.png

      晚于这个时间的版本全都不见了
      这是vim readme.md 是这样:


      image.png
      之前是这样:
      image.png
      假设我们回退到21:19:00的版本:
      image.png
      成功了!
      vim read.md 是这样
      image.png

      再回退:


      image.png
      诶。read就恢复了
      image.png
      使用hard 恢复的的版本还是处在commit状态

    git reset –hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容(这个要特别注意,因为本地代码会修改)

    git reset --soft


    image.png

    soft: 回退到某个版本 并且处于待commit的状态


    image.png

    中午11点提交也没了

    git reset –soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可

    git revert
    先修改文件 然后commit


    image.png

    git log 查看


    image.png

    输入 git revert 0bec6e2ad35ce68582e7d998a195f564a61a14b0


    image.png

    输入 git revert 2773bfdac15f700cdc2d7ab96e66a6991a986f8d


    image.png

    git log


    image.png
    这里revert 的过程被记录下来了
    并且 read.md 被恢复到最前版本
    image.png

    相关文章

      网友评论

          本文标题:2018-06-16 git revert git reset

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