GitHub上的起源和上游之间有什么区别?
GitHub上的origin
和upstream
之间有什么区别?
当一个git branch -a
命令完成时,一些分支具有origin
的前缀( remotes/origin/..
),而另一些则具有upstream
的前缀( remotes/upstream/..
)。
这应该在GitHub分支的上下文中理解(在克隆本地fork之前,在GitHub上分配GitHub回购)
upstream
通常是指您已分叉的原始回购 (另请参阅“
downstream
”和“ upstream
”的定义以获取更多关于upstream
期限的信息) origin
是你的叉子:你自己在GitHub上的回购,克隆GitHub的原始回购 从GitHub页面:
当一个repo被克隆时,它有一个默认的远程调用origin
,它指向你在GitHub上的fork,而不是它被分出的原始repo。
要跟踪原始回购,您需要添加另一个名为upstream
远程
git remote add upstream git://github.com/user/repo.git
您将使用upstream
从原始回购中获取 (以保持您的本地副本与您想要贡献的项目同步)。
git fetch upstream
(单独的git fetch
会默认从origin
获取,这不是这里需要的)
您将使用origin
来拉和推,因为您可以贡献自己的回购。
git pull
git push
(再次,没有参数,默认使用'origin')
您将通过提出拉取请求来回馈upstream
回购。
上一篇: What is the difference between origin and upstream on GitHub?