• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    详解IDEA git分支回退指定的历史版本

    场景

    当我提交了本次修改到本地和远程分支后,发现我本次提交还少了一些修改内容,或者说本次修改是完全错误的,然而也push到远程仓库去了。如何回退?

    问题

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

    方法

    有两种方法:1、Revert操作 2、利用IDEA的Reset Head指针

    影响

    方法1的Revert操作会当成一个新的提交记录,追加到提交日志当中,这样便保留了原来的提交记录。(推荐)

    方法2的Reset Head指针,会抛弃原来的提交记录,使Head指针强制指向指定的版本。

    实验环境


    上图是实验环境。本次实验只操作Readme.md文件。初始化时,master和演示使用的分支“git_demo”都是指向版本一:“版本1:第一次编辑”文本内容。当前操作分支为git_demo。

    说明

    本次实验环境未必和您的情况完全相符,不过大致思路是相同的。如果您在解决问题过程中遇到冲突,解决就好了。

    方法1:Revert操作

    当在版本1基础上进行修改内容,并提交本地、远程仓库后,发现提交的内容不是我想要的,或者是完全错误的,需要回退版本1。

    步骤

    在想要回退历史版本上单击鼠标右键,选择“Revert”(见下图)

    这时弹出冲突对话框,双击冲突文件以解决冲突。(见下图)

    在解决冲突对话框中,决定最终的版本文件。(见下图)

    重新提交到本地仓库(见下图)

    Push

    同步远程仓库(见下图)


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

    方法2:Reset Head指针

    当在版本1基础上进行修改内容,并提交本地、远程仓库后,发现提交的内容不是我想要的,或者是完全错误的,需要回退版本1。

    步骤在想要回退历史版本上单击鼠标右键,选择“Reset Current Branch to Here”(见下图)

    在弹出的git reset 参数类型选择框中,选择Hard(见下图),并Reset

    本地仓库回退到了版本1,需要同步远程仓库,执行push操作。

    push

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



    同步后,会发现,git日志丢失了版本1以后的提交。

    总结


    在回退过程中,可能您的情况不会像本实验那么简单,也就是说会出现冲突情况。那么只需要解决冲突即可。

    结尾

    除了Hard和Mixed选项,其它回退选项的效果演示可以访问这里: Git Reset 模式演示

    回退版本的方法可能还有很多,本次实验也是片面的。难免有些错误遗漏的地方,还请各位老师们不要吝惜各自的才华,恳请老师们多多指正

    到此这篇关于详解IDEA git分支回退指定的历史版本的文章就介绍到这了,更多相关IDEA git分支回退指定历史版本内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    您可能感兴趣的文章:
    • idea手动刷新git分支的详细教程
    • IDEA怎么切换Git分支的实现方法
    • idea+git合并分支解决冲突及详解步骤
    • idea切换git地址并刷新右下角git分支
    • idea2020最新版配置maven的方法
    • IDEA 重新导入依赖maven 命令 reimport的方法
    • 解决idea git切换多个分支后maven不生效的问题
    上一篇:详解IDEA Git Reset 选项说明
    下一篇:Git科普文,Git基本原理及各种骚操作(推荐)
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    详解IDEA git分支回退指定的历史版本 详解,IDEA,git,分支,回退,