当收到他人的Pull Request后,该如何手动合并。实际上在很多情况下,Pull Request所含提交有可能造成合并冲突,那样的话GitHub不再、也不能提供自动合并功能,就必须采用手工合并的方式。
将Pull Request发出者的派生版本库添加为一个新的源。(该操作是在本地的git目录下)
例如收到来自gotgithub用户的Pull Request,不妨以wangxinyu为名添加新的源。
1 | $ git remote add wangxinyu https://git.oschina.net/goldgov-wangxinyu/miniedu.git |
此时版本库中有两个源,一个克隆时自动建立的origin,另外一个就是新增加的gotgithub。
1 | $ git remote -v |
获取远程版本库gotgithub的分支和提交。
1 | $ git fetch wangxinyu |
现在除了本地分支master外,还有若干远程分支,如下:
1 | $ git branch -a |
将远程分支remotes/wangxinyu/master(可简写为wangxinyu/master)合并到当前分支中。
1 | $ git merge wangxinyu/master |
查看提交说明,看到此次合并没有产生不必要的合并提交。
1 | $ git log --graph -2 |
将合并推送到GitHub版本库中。
1 | $ git push |