情景:
fork base repo(以下简称BP)更新了,自己的repo(以下简称MP)也更新了,但是合并有冲突。
合并工具:KDiff3 (或者git mergetool)
步骤:
- 在MP新建一个pull request, base fork 选择MP, head fork选择BP (如果选反了,会把自己的修改push到BP),填写题目title和内容comment,send。
- 当新建完pull request,如果有冲突,页面提示需要使用console command line进行合并。
- 在本地repo的位置打开shell, 输入命令:
git checkout -b yournewbranch master (创建并转到branch yournewbranch)
git pull BP在github上对应的链接,例如https://github.com/wuangszalterh/tool.git master
此时会提示有哪些文件不能automatic merge,用合并工具KDiff3打开BP的文件和MP的文件,手工合并,保存。
git status (显示修改过的文件)
git add 修改过的文件
git commit -m "merge from BP"
git checkout master (转到master branch)
git merge yournewbranch (把yournewbranch 合并到master)
git push origin master (push到服务器)
git branch -d yournewbranch (删除刚才创建的branch)