我创建了一个新的本地分支:
git checkout -b new_branch
然后更改一些文件,并提交:
git commit -am "comments"
然后推到远程:
git push origin new_branch
看起来它有效,我看到消息:
* [new branch] new_branch -> new_branch
然后我做了:
git branch -a
但是我没有在遥控器/原点下看到我的新分支,但我在本地看到它。 我试着拉,
git pull
并且git说一切都是"已经是最新的"
我试过
git fetch --all
来自
的结果相同git branch -a
我缺少什么?我不记得过去不得不做任何不同的事情。
我希望能够做到这样的事情:
git diff new_branch origin/new_branch
但是origin / new_branch并没有显示出来 我所有的其他分支都显示为遥控器/ origin / branchname
答案 0 :(得分:0)
第一次推动分支时,你应该这样做:
git push --set-upstream origin branch-name
如果你没有第一次这样做,你现在就可以做到。
-u, --set-upstream
For every branch that is up to date or successfully pushed, add
upstream (tracking) reference, used by argument-less git-pull(1)
and other commands. For more information, see branch.<name>.merge
in git-config(1).
答案 1 :(得分:0)
所有建议都指向远程仓库实际上有正确的信息。由于远程仓库的新克隆工作完美并显示以前缺少的分支,似乎行为来自一些损坏的本地仓库。
感谢您的帮助。
感谢:
I have seen this (and other strange) behavior before with Git. It is open source and no law says it will not have any bugs or quirks. When you did a <code>git pull</code> and everything was already up to date, that basically confirmed that the remote branch existed in the origin. – Tim Biegeleisen