在Git的PR(Pull Request)提示冲突无法merge合并的解决方案
问题
假设有一个分支A,向master分支提交PR,然后发生无法自动解决的冲突,PR提示不能执行merge合并。
解决方案1
- 本地checkout检出并切换到A分支,pull拉取更新到最新代码
 - 在本地A分支上,merge合并远程分支master
 - 会提示无法合并,手动解决完冲突提交到A分支
 - 回到PR,会发现PR已经无冲突
 - 让有merge权限的人进行merge即可
 
注意:
优点:此方法适用于无merge权限的人操作
缺点:如果此PR最终被Declined拒绝的话,A分支上会包含PR目标分支的代码(本例中的master分支),造成代码污染。
解决方案2
- 本地checkout检出并切换到master分支,pull拉取更新到最新的master代码
 - 手动执行将远程A分支合并到你本地的master分支,此时本地会看到冲突的文件
 - 编辑冲突文件,手动解决冲突后,提交merge
 - 回到PR,可以发现PR已经被merge了
 
注意:
优点:此方法仅限有merge权限的人操作
缺点:相比方案1,PR的源分支代码干净
建议
若PR大概率一定会被合并,建议使用方案1,更符合正常流程
相关推荐
  Andrew代码战士    2020-05-15  
   baolen    2020-08-15  
   zhangxing    2020-07-05  
   iamjiyu    2020-06-25  
   tianyafengxin    2020-06-12  
   nebulali    2020-06-10  
   lovetg0    2020-05-31  
   Earlyuan    2020-05-30  
   nebulali    2020-05-19  
   Equation    2020-05-19  
   wmliang00    2020-05-14  
   huangchunxia    2020-05-31  
   炼金术士lee    2020-04-21  
   炼金术士lee    2020-08-15  
   huangchunxia    2020-08-07