gpt4 book ai didi

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

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 25 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章详解IDEA git分支回退指定的历史版本由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

场景 。

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

问题 。

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

方法 。

有两种方法:1、revert操作 2、利用idea的reset head指针 。

影响 。

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

方法2的reset head指针,会抛弃原来的提交记录,使head指针强制指向指定的版本.

实验环境 。

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

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

说明 。

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

方法1:revert操作 。

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

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

步骤 。

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

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

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

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

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

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

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

push 。

同步远程仓库(见下图) 。

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

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

方法2:reset head指针 。

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

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

步骤在想要回退历史版本上单击鼠标右键,选择“reset current branch to here”(见下图) 。

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

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

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

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

push 。

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

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

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

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

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

总结 。

  • revert操作其实就是回退操作,默认是回退到最近一次提交点,也可以回退到指定提交点,就像本次实验演示的。
  • revert的操作其实也是设置head指针。
  • 其实比较推荐revert操作,毕竟可以后悔。方法2中git push -f 强制同步操作并不推荐使用,在团队协作环境中可能会引发问题。
  • 在方法2中,选择git reset参数选择的是hard,这种参数适合场景是我只想回退到指定版本的文本。工作区里的内容可以放弃,版本2完全放弃。其实也可以选择mixed。mixed作用是在设置head指针时,保留当前工作区里的文本内容。这样方便直接修改,适合于提交的内容有误,只想修正回来就可以了这种情况。(对比效果见下图)

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

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

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

结尾 。

除了hard和mixed选项,其它回退选项的效果演示可以访问这里: git reset 模式演示 。

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

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

原文链接:https://blog.csdn.net/woshi1226a/article/details/86664159 。

最后此篇关于详解IDEA git分支回退指定的历史版本的文章就讲到这里了,如果你想了解更多关于详解IDEA git分支回退指定的历史版本的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com