2010-09-23 65 views
24

試圖創建一個遠程跟蹤分支混帳:致命的:不明確的對象名稱:「產地/ release_2.6」

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 

有沒有人知道這個錯誤是什麼意思?

乾杯

回答

48

如果事情可以在兩個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 
+0

全局搜索路徑在[* git-rev-parse(1)*修訂「](http://www.kernel.org/pub/software/scm/git/docs/git-rev-parse.html#_specifying_revisions),在項目符號下以」符號參考名稱「開頭。 ...」。 – 2010-09-24 07:58:19

+2

是的,我認爲我偶然添加了origin/release_2.6分支,但沒有在列表中看到它。我刪除了本地分支,然後全部工作。謝謝! – stellard 2010-09-24 08:36:00

+2

嘗試執行'git branch --set-upstream-to = ...'時遇到同樣的問題。添加'refs/remotes/origin'而不是簡單的'origin /'工作:)。 – 2014-07-02 06:56:57

3

我有一個類似的錯誤,當我用克隆混帳SVN的SVN倉庫,但我不得不在兩種路徑中沒有「原點」。我結束了以下參考:

0e4b5116f69200ea0d7a2ff9f0fa15630d02b153 refs/heads/development 
0ef5969f7ee44b16817053bfe146c499be5f77b7 refs/remotes/development 

我無法分支;當我嘗試我會得到「不明確的對象名稱」錯誤。我的錯誤是,當我做了原始的git svn克隆,我沒有指定--prefix;正確的形式是

git svn clone --prefix origin/ --stdlayout xxxx 

,然後我結束了參/遙控器/原產地/開發等方面也沒有問題的分枝。根據手冊頁,你必須在前綴上有斜線。

利亞姆

4

我有類似的錯誤,當我使用Git svn的創建一個遠程分支。我有遠程分支和本地分支同名。您可以使用
git branch -m old_branch new_name
重命名本地分支,這將只更名本地分支而不更改遠程分支。

Shravan

0

對我來說,這只是一個愚蠢的錯誤。我意外地創建了一個名稱類似於遠程的分支,就像在這種情況下,我有一個本地分支,如origin/release_2.6 :)