圆~圈

Git Fork项目合并源仓库代码

Git fork merge 切换分支 合并源仓库

场景描述:

Git上Fork了一个开源项目(假如项目名为Project A),起名为Project B,经过一段时间,Project B被自己修改增加了部分内容,同时Project A被原作者也修改增加了部分内容,某一天,发现Project A中新增了一个自己感兴趣的功能,想要合并到自己的Project B中来。

实现步骤:

1. Fork项目:

这个没什么可说的,不管是github还是gitee,在项目主页,都很醒目的有Fork按钮,照准了使劲儿戳就行。

2. 检出项目:

检出Project B代码到本地

[root@zhy project_b]# git clone git@gitee.com:sillycoder/project_b.git
[root@zhy project_b]# cd project_b
[root@zhy project_b]# git remote -v
origin  git@gitee.com:sillycoder/project_b.git (fetch)
origin  git@gitee.com:sillycoder/project_b.git (push)
update_stream   git@gitee.com:sillycoder/project_a.git (fetch)
update_stream   git@gitee.com:sillycoder/project_a.git (push)

如果发现没有update_stream分支(分支名可以随便起)这两行,需要手动添加远程分支

git remote add update_stream git@gitee.com:sillycoder/project_a.git

再次运行git remote -v,便会发现多出来了update_stream的远程分支

3. 把远程分支代码拉取到本地

git fetch update_stream

4. 合并分支代码

git merge update_stream/master

:如果是合并某个特定分支,需要先切换分支

git checkout develop

创建并切换到分支里

git checkout -b develop origin/develop

5. 推送最新代码到git上

git push origin master