2017-04-24 291 views
0

我不知道为什么我得到refname的警告是模棱两可的?警告:refname'xxx'含糊不清

这是否意味着不会有两个以上的分支,其名称以字符串开头?但这里没有。

谢谢。

$ git checkout B03799 
warning: refname 'B03799' is ambiguous. 
Switched to branch 'B03799' 

$ git branch -l 
    B03318 
    B03318new 
    B03318newnew 
    B03318newnewQa 
    B03336 
    B03701 
* B03799 
    master 
    qa 
    staging 
+2

你有其他的参考吗? (例如标签) –

+0

谢谢。如果我有其他参考资料,我怎么能找到它? – Tim

+0

'git show-ref'。 –

回答

2

你有东西在你的回购也命名为B03799。很可能是一个标记(使用git tag来列出标记),分支(请参阅git branch -a以包含远程跟踪分支)或者其SHA以b03799开始的提交(即使用this solution进行验证)。 Git必须猜测你想要哪一个,但它也会给你一个警告,以便你知道它可能是猜错了。

您可能想要更改分支命名约定,以便它们不与散列冲突,即至少包含0-9和a-f之外的一个字符。

+0

我强烈怀疑它是一个内部Git对象,其哈希ID以'b03799'开头。请注意,在这种情况下,* most * Git命令直接转到对象,但'git checkout'解析分支名称。最好的办法是重命名分支,否则你必须用许多Git命令输入'refs/heads/B03799'。 – torek