• git版本回退


    场景1:

      当你改乱了工作区某个文件的内容,修改后未执行git add和git commit,想直接丢弃工作区的修改时,用命令git checkout -- file

    场景2:

      当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,修改后执行了git add,未执行git commit,想丢弃修改,分两步,第一步用命令git reset HEAD <file>,就回到了场景1,第二步按场景1操作。

    场景3:

      已经提交了不合适的修改到版本库时,执行了git commit,未执行git push,想要撤销本次提交,如下:

      1、查看历史提交记录

        git log 或者格式化输出结果 git log --pretty=oneline

        会显示commit id

      2、回退指定版本

        先找到要回退的版本的commit id

        git reset --hard <commit id或者前几位>

      3、git relog可以看做了哪些操作

    场景4:

      已经执行了git push,想要撤销本次提交,如下:
      假设你有3个commit如下:

      commit 3
      commit 2
      commit 1

      其中最后一次提交commit 3是错误的,那么可以执行:
      git reset --hard HEAD~1
      你会发现,HEAD is now at commit 2。
      然后再使用git push --force将本次变更强行推送至服务器。这样在服务器上的最后一次错误提交也彻底消失了。
      值得注意的是,这类操作比较比较危险,例如:在你的commit 3之后别人又提交了新的commit 4,那在你强制推送之后,那位仁兄的commit 4也跟着一起消失了。

  • 相关阅读:
    [洛谷P3931]SAC E#1
    洛谷 P4127 [AHOI2009]同类分布 解题报告
    洛谷 P4475 巧克力王国 解题报告
    洛谷 P4148 简单题 解题报告
    洛谷 P2463 [SDOI2008]Sandy的卡片 解题报告
    洛谷 P4211 [LNOI2014]LCA 解题报告
    洛谷 P4074 [WC2013]糖果公园 解题报告
    AT1219 歴史の研究 解题报告
    洛谷 P4137 Rmq Problem /mex 解题报告
    THUWC2019 摸鱼记
  • 原文地址:https://www.cnblogs.com/leanfish/p/10149018.html
Copyright © 2020-2023  润新知