2010-05-14 18 views
25

Ich überprüfte die relevanten Threads, kann aber immer noch nicht herausfinden, was hinter den Kulissen vor sich geht.Git. Remote HEAD ist mehrdeutig

Als ich git remote show origin getippt, ich habe:

* remote origin 
    Fetch URL: xxxx 
    Push URL: xxxx 
    HEAD branch (remote HEAD is ambiguous, may be one of the following): 
    development 
    master 
    Remote branches: 
    development tracked 
    master  tracked 
    Local branches configured for 'git pull': 
    development merges with remote development 
    master  merges with remote master 
    Local ref configured for 'git push': 
    master pushes to master (up to date) 

Ich habe auch git show-ref, und ich bekam:

3f8f4292e31cb8fa5938dbdd406b2f357764205b refs/heads/development 
3f8f4292e31cb8fa5938dbdd406b2f357764205b refs/heads/master 
3f8f4292e31cb8fa5938dbdd406b2f357764205b refs/remotes/origin/development 
3f8f4292e31cb8fa5938dbdd406b2f357764205b refs/remotes/origin/master 

Hier ist die Liste aller Branchen von Ich habe die Ausführung git branch -a:

development 
* master 
    remotes/origin/development 
    remotes/origin/master 

Und das ist was in der .git/config:

Es scheint, dass die Remote-Entwicklung und Master-Zweig den gleichen Knoten teilen. Wie löse ich dieses Mehrdeutigkeitsproblem?

Antwort

41

Es ist nichts falsch mit Ihren Remote-Repos. git sagt dir "Remote HEAD ist mehrdeutig" weil Master und Entwicklung beide den gleichen SHA1 Hash haben. Wenn Sie gerade die Entwicklung vom Master abgezweigt haben, sollte es so sein.

Versuchen Sie, etwas zu master oder Entwicklung zu begehen und es zum Ursprung zu schieben; Diese "mehrdeutige" Nachricht wird nicht mehr angezeigt und der Zweig, an den Sie sich gerade gebunden haben, wird zum entfernten HEAD-Zweig.