如何将原repository的指定branch同步到已fork的repository?
如何将原仓库的特定分支引入你的Fork仓库
没问题,这事儿操作起来很简单,我一步步给你拆解清楚:
步骤1:确认原仓库已作为远程源(Upstream)
首先得确保你的本地仓库已经把原仓库添加为「上游远程源」(upstream):
- 先检查现有远程源:执行
git remote -v,看看输出里有没有upstream指向原仓库的地址 - 如果没有的话,添加它:
git remote add upstream <原仓库的Git克隆地址>(比如git remote add upstream https://github.com/original-owner/original-repo.git)
步骤2:拉取原仓库的所有分支信息
执行这条命令,把原仓库包括目标分支在内的所有分支最新状态都同步到本地:
git fetch upstream
这一步不会影响你本地的现有分支,只是把原仓库的分支数据拉到本地而已。
步骤3:创建本地分支跟踪原仓库的特定分支
现在你可以基于原仓库的目标分支创建一个本地分支,方便后续开发:
git checkout -b <你的本地分支名称> upstream/<原仓库的特定分支名称>
举个例子,如果原仓库的目标分支叫 feature/new-experiment,你想在本地也叫这个名字,就执行:
git checkout -b feature/new-experiment upstream/feature/new-experiment
这样你的本地分支就和原仓库的目标分支建立了跟踪关系,之后同步更新会很方便。
步骤4:将分支推送到你的Fork仓库
最后把这个本地分支推送到你自己的fork(也就是默认的 origin 远程源):
git push origin <你的本地分支名称>
完成后,你去自己的GitHub/GitLab页面就能看到这个分支了,接下来就可以放心基于它做实验啦!
额外小提示
如果之后原仓库的那个特定分支有更新,你可以在本地分支执行:
git pull upstream <原仓库的特定分支名称>
把最新的更改同步到本地,再执行 git push origin <你的本地分支名称> 推送到自己的fork即可。
内容的提问来源于stack exchange,提问作者Gaurav Jha
相关产品推荐
相关产品推荐

