IDEA提交git分支冲突解决

申明:此文章仅限一般解决,大佬跳过

开头:之前从事工作关系,每天会提交大量脚本,而且master分支是实际操作环境,所以不会频繁更换分支,也就是说一个分支会反复使用,并且,别的同事也可能会修改、误操作、误删这个分支

--其实就是为了到时候客户发现有问题能追责,这里必须戳穿,不然直接用svn不香?

一年半啥也没学到,就是搞了一手解决冲突,ca,下面描述全是回忆,因为已经离职,所以没有详细步骤截图,抱歉

业务情况:分支从低到高为dev-sit-preuat-master

一般遇到问题就是提交分支时候报黑色感叹号

分情况

一、如果是Dev环境报错,此时可以肯定是这个分支你提交上去的不是上一次修改过的新分支

1、查看本地分支,是否没有update操作就直接更改了本地脚本进行提交了---一般这个情况是别人修改了这个分支,但是你本地没有同步造成的

2、是否别人提交文件的时候带上了你的文件,此时需要上git查看你本次提交文件的历史记录,看是那个分支带上了(这也只能是甩锅,不能根本解决),自己需要基于目前分支建中转分支了,因为麻烦的始终是你(脸上笑嘻嘻,心里MMP。。。)

3、查看git服务器上是否还有这个分支--这个情况一般不会出现,但是也有可能被误删

二、sit、preuat环境报错(master一般不会报错毕竟是主分支,这要是能也能报错,那我没话说了--原理和sit、preuat差不多,我还真见过)

此时报错的话,需要上git查看历史提交记录,看文件最新一次更新是什么时候,如果最近更新的还是当前分支,先update本地分支再重新提交

如果是别人误操作提交过,还是需要自己建中转分支。。。其实找不找原因的吧,都是恶心自己

三、建立中转的目的:

是为了把记录带到分支上,使得分支不冲突

举个例子:

比如现在你需要从Dev环境合并到preuat环境,但是最后的preuat环境报错了,文件冲突

只需要建立preuat的中转分支,将记录提交上去即可---即Dev、sit都是正常合并,只有preuat合并的是中转分支

比如现在你需要从Dev环境合并到preuat环境,但是DEV环境报错了,文件冲突

 分情况:

  1、如果只是Dev环境冲突(一个分支冲突),只是建立那一个分支的中转提交即可

  2、一般情况是后续的分支都会有问题,所以需要Dev建立中转,sit建立中转、preuat建立中转,一共三个中转,master不需要,因为所有分支都是基于master这个主分支拉取的

如果这个分支之前误提交了别人的文件怎么办:

同理,建中转,只不过在git上面是只合并不执行(就是在git上点一下marge,没有权限的找一下配置组),一路合并到master,换一个新的分支来提交,不会对原有纪录造成影响

此时的文件肯定是有问题的(自己的文件没有问题,但可能会影响别人的文件),所以此时执行的话会有报错信息,合并记录不会

四、建立中转:

Dev中转:基于远端Dev新拉取一个分支,分支名为  当前分支_dev

之后IDEA右下角查找当前分支右键选Merge into current,之后将冲突文件全选,点merge----网上截图凑合看

之后直接往上push吧,comment记录肯定是空的,因为之前提交上去的那个分支已经把记录push上去了,只是还没有合并

按这个步骤同理,新建sit中转也是需要基于远端sit来新建、preuat、master也是这样,很麻烦但是要细致,不然更麻烦,再次MMP

对了,提一句,为什么说麻烦呢,因为只要你这个分支没有合并到master主分支,之后的每一次提交,都需要在错误分支上建立中转分支提交,所以嘛....有这么多MMP

先更新到这,想起来再补

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值