Git踩坑记:idea中merge操作后如何撤销-创新互联

本文仅为记录git操作过程中遇到的状况,因此不会详细的讲解相关git的命令,如果遇到不懂的命令可以结合其他文章一并观看

10年积累的网站制作、成都网站设计经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有赣州免费网站建设让你可以放心的选择与我们合作。
一、场景概要

存在两个分支dev 和 master, dev分支既对master已经存在的文件进行了修改,也新增了一些文件,现在我们需要把 dev 的代码合并到master ,在dev 合并到 master 时发生了冲突,我在解决了一部分冲突后突然不想把 dev 合并到 master,这时候就算我们取消解决冲突, dev 的代码也已经到了master ,所以要做的操作就是恢复master到未合并前

二、我的繁琐解决之路

操作流程如下:
① 先进行了一次 revert 操作
状态: 此时把 master 原先存在但是被dev改动到的文件给转变为未合并前的状态,
但是还存在一些 master 原先不存在,但是从 dev 合并过来的新文件
② 将 从 dev 合并过来的新文件 commit 到了远程 master 分支
状态:此时本地和远程 master 分支都被污染了,我们需要把这些提交的新文件清除掉
③ 对刚提交的这次操作进行 revert 操作,其实就是把改动的全部反转,就相当于把这些文件删除了
状态:此时本地新增的代码就被 revert 掉了
④ 再进行一次 commit 操作,将远程的新增的代码删除掉了

繁琐的流程到此结束。。。

三、其他解决方式

当时时间比较紧张,加上对git 不是特别熟练,所以兜兜转转的,而且这种方式也很危险,如果操作不当可能会导致远程分支的代码受到影响,接下来讲一下我后面总结的其他几种方式
① 在第一次 revert 之后直接把本地新增的代码删除就行了,不需要提交到远程,这样保险一点,不会影响到远程master,但是缺点是需要手动去选择需要删除的文件
② 通过 reset 方式,直接回退到为合并前的状态
③ 直接把本地代码删除,重新clone一份代码,最保险的办法,但是比较费时间

以上方法只是我的一个想法,有些没经过论证,所以可能会存在一些问题,如果有遇到同样问题的朋友们可以按实际情况下参考下,欢迎各位在评论区指出本文的错误之处,非常感谢~

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


网站名称:Git踩坑记:idea中merge操作后如何撤销-创新互联
文章位置:http://hbruida.cn/article/dgsipj.html