Py学习  »  Git

git设置为upstream=origin/master(远程本地副本)

Mohammad Karmi • 5 年前 • 649 次点击  

我读过很多关于“源/主”的答案,他们说这是分支主的远程源的本地副本。当我读到set upstream指向应该指向远程分支主机的位置时,我很困惑,所以有人能解释为什么将upstream设置为引用本地副本而不是远程副本?喜欢 git push origin master git push origin/master

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/30527
 
649 次点击  
文章 [ 1 ]  |  最新文章 5 年前
Tim Biegeleisen
Reply   •   1 楼
Tim Biegeleisen    5 年前

对于基本git命令中的引用,您似乎有些困惑。你应该有困惑,因为它很困惑。

当地分支机构 master 它只存在于您的本地git repo中,它是您在实际开发工作中所做的大部分工作。同样,还有一个分支叫做 主人 在遥控器上。现在,对于混乱,有一个 第三的 分支调用 origin/master . 这是一个 地方的 分支机构,存在于您的本地回购协议中。它的存在主要是作为真正远程的代理 主人 分支机构。无论何时与遥控器同步 主人 分支,在本地实际使用 起源/大师 .

git pull origin master 实际上与此相同(假设默认情况下使用合并策略):

git fetch origin
git merge origin/master

第一步, git fetch origin ,更新本地跟踪分支 起源/大师 用最新的变化来反映 主人 远程上的分支。然后,它会合并到本地 主人 分支使用 起源/大师 . 下面是一个简短的总结:

master        | the master branch (either local or remote)
origin master | the master branch on the remote (as in the git pull command)
origin/master | local tracking branch for master which mirrors the remote version

所以,记住 起源/大师 是跟踪真正遥控器的实际分支 主人 分支,我们可以告诉Git使用 起源/大师 作为跟踪分支机构,通过:

# from local master branch
git --set-upstream-to origin/master

请注意,如果创建或签出 主人 在本地,Git通常会创建 起源/大师 作为后台的默认跟踪分支。因此,在实践中,你可能不必使用 --set-upstream-to 非常频繁。