尝试创建远程跟踪分支时出现此错误
git co -b release_2.6 origin/release_2.6
warning: refname 'origin/release_2.6' is ambiguous.
warning: refname 'origin/release_2.6' is ambiguous.
fatal: Ambiguous object name: 'origin/release_2.6'.
我只使用release_2.6
定义了这两个引用git show-ref | grep "release_2.6"
a71b2da1526f73862464a23aceaa1939a8b1ace2 refs/heads/origin/release_2.6
ed1399936a8cc4cd2feed1851123af861b0ff093 refs/remotes/origin/release_2.6
有谁知道这个错误意味着什么?
干杯
答案 0 :(得分:58)
如果refs/heads/
和refs/remotes/
都可以找到某些内容,那么这是不明确的。
您有远程origin/release_2.6
的本地分支release_2.6
和远程跟踪分支origin
。不要以为你应该有一个refs/heads/origin/release_2.6
分支。无论如何,您可以指定完整的引用名称来解决歧义:
git co -b release_2.6 refs/remotes/origin/release_2.6
答案 1 :(得分:9)
使用git-svn创建远程分支时出现类似错误。我有远程分支和同名的本地分支。您可以使用重命名本地分支
git branch -m old_branch new_name
这将只重命名本地分支而不更改远程分支。
Shravan
答案 2 :(得分:3)
当我使用git-svn克隆SVN存储库时,我遇到了类似的错误,但我在任一路径中都没有“原点”。我最终得到了以下参考文献:
0e4b5116f69200ea0d7a2ff9f0fa15630d02b153 refs/heads/development
0ef5969f7ee44b16817053bfe146c499be5f77b7 refs/remotes/development
我无法分支;当我尝试时,我会得到“模糊的对象名称”错误。我的错误是当我做了原始的git svn克隆时,我没有指定--prefix;正确的形式是
git svn clone --prefix origin/ --stdlayout xxxx
然后我最终得到refs / remotes / origin / development等,并且没有问题分支。根据手册页,您必须在前缀上加上斜杠。
利安
答案 3 :(得分:3)
对我来说,这只是一个愚蠢的错误。我不小心创建了一个名为remote的分支,就像在这种情况下我有一个像origin/release_2.6
这样的本地分支:)