如果X作为远程分支存在,则
远程仓库有一个
这在其他计算机上也可以重现(尽管是相同的平台和可能是相同版本的git)。出于绝望的原因(而不是因为我认为它会起作用),我删除了
我被困在可能导致问题的原因上。我怀疑
Git版本:1.8
git checkout X
应该创建一个本地分支。在我的情况下,对于单个分支,它没有这样做。远程仓库有一个
master
、release
和一些其他的分支(比如refactor-update
)。
我执行以下操作:
git clone WHATEVER/repo.git
git checkout release
但是我没有收到正常的分支切换消息,也没有创建一个本地分支来跟踪origin/release
(根据git checkout
的手册)。我还停留在master
上。请注意,如果我执行git checkout refactor-update
,则一切都按预期工作。这在其他计算机上也可以重现(尽管是相同的平台和可能是相同版本的git)。出于绝望的原因(而不是因为我认为它会起作用),我删除了
release
分支,并用备份和master
替换了它,但行为没有改变(git push origin :release && git push origin master:release
)。我被困在可能导致问题的原因上。我怀疑
git checkout
似乎出于某种原因无法识别单词release
,这使它很像只执行git checkout
。为了尝试跟进这个问题,在另一个仓库中,我创建了一个发布分支,以查看它是否是保留字或其他原因,但它确实只存在于这个仓库中。在.git/config
中似乎没有任何异常。Git版本:1.8
git fetch --prune
,然后再执行相同的git checkout X
。 - Miguelgraz-p
/--prune
仅添加了“删除不匹配”的行为,拾取内容始终启用(前提是您没有破坏远程 git 配置fetch =
行 :-))。 - torekgitk somebranchonlyontheremote
,并且如预期的那样,gitk 说 'wut?'。然后我执行了gitk release
(本地没有名为release
的分支),它展示了一个历史... - medwardsrepo/release
的文件/文件夹?这是我的问题之一。你使用的 Git 版本是哪个? - jcsahnwaldt Reinstate Monica