git合并远程分支到本地分支

2018-08-29  本文已影响0人  bingoteamer

0.背景:

我们经常会面临这样的情况,我们从master分支拉取代码,在本地创建分支local_feature_xxx,开发过程中,会将本地代码推送到远程分支remote_feature_xxx备份,等开发完成之后,需要合并到远程分支,但此时远程分支已经有很多commit,remote_feature_xxx直接合并会有很多的冲突,需要手动解冲突,需要在本地解完冲突之后,再推送到remote_feature_xxx,然后再提MR。

1.方法:

首先确认当前本地分支变更已经提交到远程分支,git status:

git status 确认本地分支已提交

如果不放心,可以使用git diff 比较一下两个分支的区别:

git diff local_feature_xxx origin/remote_feature_xxx

确认本地分支与远程分支对应之后,需要将需要合并的远程分支拉取到本地:

git fetch origin master:temp

将本地分支命名为temp分支

而后对比temp分支与local_feature_xxx之间的区别:

git diff local_feature_xxx temp

而后,在local_feature_xxx上合入temp分支(注意不是在temp分支上合入local_feature_xxx):

git merge temp

接下来,解冲突:

a123

<<<<<<< HEAD

b789

=======

b45678910

>>>>>>> 6853e5ff961e684d3a6c02d4d06183b5ff330dcc

<<<<<<<HAED和=======之间的内容是你的变更,=======和>>>>>>> 6853e5ff961e684d3a6c02d4d06183b5ff330dcc之间的内容是别人的变更,选择一个留下即可。

解决完冲突之后,需要将变更提交到远程分支remote_feature_xxx:

git add .

git commit -m 'your comment'

git push origin local_feature_xxx:remote_feature_xxx

而后,从remote_feature_xxx分支提MR到master分支即可。

上一篇 下一篇

猜你喜欢

热点阅读