gerrit出现Merge Conflict,小白解决心路历程( 二 )


那我现在再看看git 吧,按照提示进行git add .,显示如下
interactive rebase in progress; onto 12beffbb8Last command done (1 command done):pick ec2a685ab xxxxx(use "git rebase --edit-todo" to view and edit)All conflicts fixed but you are still merging.(use "git commit" to conclude merge)Changes to be committed:
然后我觉得按照提示吧,用git--edit-todo,结果是编辑代码的
到这里才是正确的解决方案
我就换成git--,这个用来解决合并冲突

gerrit出现Merge Conflict,小白解决心路历程

文章插图
注意注意
执行完git pull --rebase之后如果有合并冲突,使用以下三种方式处理这些冲突:git rebase --abort 会放弃合并,回到rebase操作之前的状态,之前的提交的不会丢弃;git rebase --skip 则会将引起冲突的commits丢弃掉(慎用!!);git rebase --continue 合并冲突,结合"git add 文件"命令一起用与修复冲突,提示开发者,一步一步地有没有解决冲突 。(fix conflicts and then run "git rebase --continue")
具体的细化就是这个
对上述冲突的处理1、使用 $git rebase --abort执行之后,本地内容会回到提交之间的状态,也就是回到以前提交但没有pull是的状态,简单来说就是撤销rebase 。2、使用 $git rebase --skipgit rebase --skip 引起冲突的commits会被丢弃,对于本文应用的例子来说开发者A对c.sh文件的commit无效,开发者A自己修改的部分全部无效,因此,在使用skip时请慎重 。执行:$ vim c.sh查看本地c.sh文件提交内容,展示如下图所示,执行语句之后开发者A的修改无效 。3、使用 $git rebase --continue执行完$git pull --rebase 之后,本地如果产生冲突,手动解决冲突之后,用"git add"命令去更新这些内容的索引(index),然后只要执行:$ git rebase --continue 就可以线性的连接本地分支与远程分支,无误之后就回退出,回到主分支上 。注意:一般情况下,修改后检查没问题,使用rebase continue来合并冲突 。
然后我就利用git--,就显示成功了 。显示结果如下
//解决完成冲突,合并冲突,没有问题的话就合并到主分支git rebase --continue[detached HEAD da99a7669]xxxxxSuccessfully rebased and updated refs/heads/dev_ecloud.
然后就继续别的操作就完成了,主要是上面这个命令 。
还有一点补充:
在上因为这个任务出现冲突,导致在这之后的其他工程也出会出现Merge
怎么解决呢?
然后打开你的上的,勾选,点击,你就解决完毕了 。
为啥这就行了呢,因为这个就相当于基于现在最新的dev分支拉取基线,我感觉很像咱们再IDEA命令行中写的git-- 。
【gerrit出现Merge Conflict,小白解决心路历程】这就解决了,这是我的心路历程,如果觉得不错就点个赞吧!