是什么区别origin
和upstream
对GitHub上 ?
当执行git branch -a
命令时,某些分支的前缀为origin
( remotes/origin/..
),而其他分支的前缀为upstream
( remotes/upstream/..
)。
#1楼
这应该在GitHub分支的上下文中理解(在本地克隆该分支之前,您可以在GitHub上分支 GitHub存储库)。
-
upstream
通常指您已分叉的原始回购
(有关upstream
术语的更多信息,请参见“downstream
”和“upstream
”的定义 ) -
origin
是您的叉子:您在GitHub上的自己的存储库,是GitHub原始存储库的克隆
在GitHub页面上:
克隆存储库时,它具有一个默认的远程
origin
,该origin
称为origin
,它指向您在GitHub上的fork,而不是它从其派生的原始存储库。
要跟踪原始存储库,您需要添加另一个名为upstream
远程服务器
git remote add upstream git://github.com/<aUser>/<aRepo.git>
(对于aUser/aRepo
,您已分叉的原始创建者和存储库的引用)
您将使用upstream
从原始存储库中获取 (以使本地副本与您要贡献的项目保持同步)。
git fetch upstream
(默认情况下,仅git fetch
会从origin
获取,这不是这里所需要的)
因为您可以为自己的存储库做出贡献,所以将使用origin
进行推送和推送 。
git pull
git push
(再次,不带参数,默认使用'origin')
您将通过发出拉取请求来回溯upstream
回购。
来源:oschina
链接:https://my.oschina.net/stackoom/blog/3182982