有人可以解释为什么这不起作用吗?
➜ workspace git:(REL-BRANCH-1.0.1d) ✗ git branch -a
REL-BRANCH-1.0.1c
* REL-BRANCH-1.0.1d
remotes/origin/REL-BRANCH-1.0.1c
remotes/origin/master
➜ workspace git:(REL-BRANCH-1.0.1d) ✗ git checkout -t origin/master
fatal: Cannot setup tracking information; starting point 'origin/master' is not a branch.
➜ workspace git:(REL-BRANCH-1.0.1d) ✗ git checkout -t remotes/origin/master
fatal: Cannot setup tracking information; starting point 'remotes/origin/master' is not a branch.
答案 0 :(得分:18)
可能您的原始遥控器设置为仅提取某些分支。一个简单的
git remote set-branches --add origin master
会解决它。
答案 1 :(得分:1)
对于任何通过谷歌来到这里同时遇到同样问题的人(通过'相同的'我的意思是相同的错误信息不是同一个原因)' git svn'而不仅仅是' git':
删除-t选项可能有所帮助,如:git-svn: Cannot setup tracking information; starting point is not a branch
中所述答案 2 :(得分:0)
您的存储库中可能包含要求fetch命令仅检索某些特定分支而不是全部检索的配置。您可以检查使用的配置
git config --local --get-all remote.origin.fetch
它可以返回+refs/heads/*:refs/remotes/origin/*
,+refs/heads/master:refs/remotes/origin/master
或+refs/heads/AnyOtherBranch:refs/remotes/origin/AnyOtherBranch
之类的行。
第一个配置字符串表示它获取所有分支。第二和第三个是仅针对特定分支的访存配置的示例。
如果您没有带星号的配置行,则可以使用其中任何一个
# Reset "remote.origin.fetch" to deal with all branches
git remote set-branches origin '*'
或
# Append new config line for specific branch
git remote set-branches --add origin AnyOtherBranch