zoukankan      html  css  js  c++  java
  • Git回滚

    1、还原一个提交可以用git checkout

      checkout  的功能很多,不仅仅是切换分支,其中一个功能就是 [将当前目录中的文件还原到一个特定的版本] 。

      git checkout [commit-id]

      git checkout 加上参数 [提交的 ID] 就可以了。

      其中 [提交的 ID] 可用 git log 查看。上一节我们做了一个提交:  

      

      黄色的一长串就是提交ID。

      现在我们基于这个提交,对 a.txt 做一些修改。然后再用 git status 观察当前版本库的状态。  

        

      git status 提示 a.txt 的状态是 modified的,也是就是较于上一个提交,发生的修改。

      git status 还提示了这样一行:use "git checkout -- <file>..." to discard changes in working directory

      接下来我们就可以按这个提示用git checkout撤销这个修改,还原到上一个提交。

      git checkout -- a.txt

      

      还原操作成功。

      最后用一张图做这一节做一个小结:

      

     2、git revert <commit>

      撤销指定的提交,commit是指版本号

      比如我们想要下面绿框所选的版本,就需要把上面的版本给撤销掉

      

       就需要 git revert 57fcbad241

      但是撤销的这个历史会被记录下来,相当于用新的版本覆盖老的版本

      

     3、git reset --hard HEAD

      这种方法撤销的时候也会把远程的历史记录给撤销掉

      比如要回退到这个版本

      

       git reset --hard 57fcbad241

       但是这样会报错,因为有冲突

      可以强制推送,在git push 后面加上 --force

    ______________________________________

    参考文章:https://blog.csdn.net/wuzhong8809/article/details/84998791

  • 相关阅读:
    centos在设置时区
    Qt那点事儿(三) 论父对象与子对象的关系
    Qt多线程应用--QRunnable
    Qt学习之如何启动和终止一个线程
    Qt 互斥量 QMutex
    Qt网络获取本机网络信息
    QT程序拷贝 转移 改变运行环境
    Qt调用dll中的功能函数
    用Qt生成dll类库及调用方法
    Qt DLL总结【二】-创建及调用QT的 DLL
  • 原文地址:https://www.cnblogs.com/oaoa/p/14805203.html
Copyright © 2011-2022 走看看