我跟随(上游)GitHub上有一个项目:
https://github.com/adaptivecomputing/torque
我有一个这个回购的分支(原产地):
https://github.com/spudstud/torque
新分支已添加到上游存储库中,我想将其拉入原点,然后再添加到本地计算机。
根据GitHub的帮助,这应该很容易。我应该能够使用以下命令同步我的fork。 https://help.github.com/articles/syncing-a-fork
git fetch upstream
git merge upstream/master
不幸的是,我想要的上游分支(4.2.3,4.2.3.1,4.2.3.h2,4.2.3.h3)仍未出现在原点
git clone git@github.com:spudstud/torque.git
cd torque/
git remote add upstream https://github.com/adaptivecomputing/torque.git
git remote -v
origin git@github.com:spudstud/torque.git (fetch)
origin git@github.com:spudstud/torque.git (push)
upstream https://github.com/adaptivecomputing/torque.git (fetch)
upstream https://github.com/adaptivecomputing/torque.git (push)
git fetch upstream
git checkout master
git merge upstream/master
git branch -a
* master
remotes/origin/2.5-dev
remotes/origin/2.5.12
remotes/origin/4.1-dev
remotes/origin/4.1.0
remotes/origin/4.1.4
remotes/origin/4.1.4-1648
remotes/origin/4.1.5
remotes/origin/4.1.5.1
remotes/origin/4.1.5.2
remotes/origin/4.2.0
remotes/origin/4.2.1
remotes/origin/4.2.2
**** 4.2.3, 4.2.3.1, 4.2.3.h2, 4.2.3.h3 should show up about here^ ****
...
remotes/origin/HEAD -> origin/master
remotes/origin/master
remotes/upstream/2.5-dev
remotes/upstream/2.5.12
remotes/upstream/4.1-dev
remotes/upstream/4.1.0
remotes/upstream/4.1.4
remotes/upstream/4.1.4-1648
remotes/upstream/4.1.5
remotes/upstream/4.1.5.1
remotes/upstream/4.1.6
remotes/upstream/4.1.6.h1
remotes/upstream/4.1.6.h2
remotes/upstream/4.2-dev
remotes/upstream/4.2.0
remotes/upstream/4.2.1
remotes/upstream/4.2.2
remotes/upstream/4.2.2.ufl
remotes/upstream/4.2.3
remotes/upstream/4.2.3.1
remotes/upstream/4.2.3.h2
remotes/upstream/4.2.3.h3
remotes/upstream/master
到目前为止,我所读到的内容都无法解释问题所在:
解 感谢答案,我想出来了。 我不明白我需要将更改推回到分支:
git push origin 4.2.4
看来,我试图做的是“快进”我的叉子。 GitHub曾经有一个快进按钮,可以自动使您的分叉存储库与上游 Fast Forward Your Fork 保持同步。看起来GitHub摆脱了快进功能(据我所知),所以我必须为每个分支重复这些步骤。
答案 0 :(得分:2)
您只是合并主分支。如果你想跟随上游分支(我认为这就是你想要的,内联注释似乎在寻找4.2.3等),那么你需要在本地跟踪它们(假设您希望这些更改可用于细读/编辑)然后将它们推回你的叉子。
git checkout -t upstream/4.2.3
然后将它们推回你的叉子
git push origin 4.2.3
所有提取功能都在拉动整个遥控器。当您git merge
时,您的版本只会将上游/主人与您的local/master
合并。
答案 1 :(得分:1)
origin
是你的分叉。上游仓库称为upstream
,并且存在upstream/4.2.3
等。您可以使用$ git push origin upstream/4.2.3
等将它们推送到您的存储库。这两个存储库不会自动同步。