GitGit使用程序员

如何同步 Github fork 出来的分支

2017-01-11  本文已影响2832人  嘿嘿_小于同学

1、当我在一个项目(下面就叫它源项目)中fork出来一个分支自己在上面开发,在协同开发过程中,我想时刻得到其他小组成员上传的最新的代码,就需要与源项目保持同步,google了一些解答,总结了一下。
2、项目 fetch 到本地,通过命令行的方式 merge
在我们本地的项目中打开git bash输入下面的命令查看查看远程信息:

git remote -v

会看到如下信息:

foolf@DESKTOP-N53SFFK MINGW64 /j/SoftGateway (master)
$ git remote -v
origin  http://172.18.69.52/YuZiyong/SoftGateway.git (fetch)
origin  http://172.18.69.52/YuZiyong/SoftGateway.git (push)

跟上游仓库同步代码之前,必须配置过 remote,指向上游仓库
如果我们的源项目的地址为

http://172.18.69.52/hhhh/SoftGateway.git

使用下面命令配置远程仓库

git remote add upstream http://172.18.69.52/hhhh/SoftGateway.git

从上游仓库获取到分支,及相关的提交信息,它们将被保存在本地的upstream/master
分支

git fetch upstream

这样就将源项目的分支获取到本地

$ git fetch upstream
remote: Counting objects: 1, done.
remote: Total 1 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (1/1), done.
From http://172.18.69.52/hhhh/SoftGateway
   de69622..f2da06e  master     -> upstream/master

3、如果你在其他分支,需要想切换到本地master分支

git checkout master
# Switchedto branch 'master'

4、把 upstream/master 分支合并到本地的 master 分支,本地的 master 分支便跟上游仓库保持同步了,并且没有丢失你本地的修改。

git merge upstream/master

END
这样就可以和fork的源仓库保持同步了。

上一篇下一篇

猜你喜欢

热点阅读