zoukankan      html  css  js  c++  java
  • 本地仓库和远程仓库分支回退到指定的历史版本(idea)

    已经提交到仓库(本地和远程仓库)的内容利用IDEA回退到原来指定版本

    Revert操作:Revert操作会当成一个新的提交记录,追加到提交日志当中,这样便保留了原来的提交记录。

      在想要回退历史版本上单击鼠标右键

        

      如果有冲突,双击冲突文件查看冲突,并解决

        

       回退后重新提交,可以同时 push 到远程仓库

        

      这种回退的好处在于,如果后悔了“回退”这个操作,也可以回退到没有回退之前的版本,因为历史记录还保留提交记录,

      但是新添加的文件被提交上去不会因为回退版本而删除,仅仅是回退修改的文件,有冲突就手动解决。

    利用IDEA的Reset Head指针:Reset Head指针,会抛弃原来的提交记录,使Head指针强制指向指定的版本。

      在想要回退历史版本上单击鼠标右键

        

        

        1、soft
          ①移动本地库HEAD指针

          意思就是,回滚后,仅仅是把本地库的指针移动了,而暂存区和你本地的代码是没有做任何改变的。

          而你上次改动已提交到本地库的代码显示是绿色,即未提交

        2、mixed
          ①移动本地库HEAD指针

          ②重置暂存区

          意思就是,回滚后,不仅移动了本地库的指针,同时暂存区的东西也没了,意思就是你上次添加到暂存区的文件需要重新添加

        3、hard
          ①移动本地库HEAD指针

          ②重置暂存区

          ③重置工作区

          意思就是,回滚后,本地代码就是你回退版本的代码

        4、keep

          ①移动本地库HEAD指针

          ②重置工作区

          意思就是,回滚后,本地代码就是你回退版本的代码,暂存区的文件依然保存。

      此时本地仓库回退了,但远程仓库还没有,push到远程仓库,会提示拒绝,不能和远程仓库合并,因为合并就达不到回退的目的了

        打开Terminal,在本项目目录下,输入git push -f 强制同步远程仓库。

        

        同步后,会发现,git日志丢失了“第二次提交”以后的提交记录。

  • 相关阅读:
    获取各种屏幕宽度、高度
    java中获取本地文件的编码
    线程通信与进程通信的区别
    女性长期没有性生活有什么危害?
    面试中你必须要知道的语言陷阱
    当项目出现空闲时候,如何开展软件测试工作?
    同样是做鸭的 绝味与周黑鸭的区别咋那么大?!
    javaIO(二)
    (原)代码块
    this的使用
  • 原文地址:https://www.cnblogs.com/roadlandscape/p/12359791.html
Copyright © 2011-2022 走看看