Jestem nowy w Git i wydaje mi się, że mam jedną gałąź za dużo, jeśli wykonam następujące polecenie:
warning: refname 'HEAD' is ambiguous.
Otrzymuję następujący wynik:
warning: refname 'HEAD' is ambiguous.
From github.com:dagda1/hornget
* branch master -> FETCH_HEAD
warning: refname 'HEAD' is ambiguous.
warning: refname 'HEAD' is ambiguous.
Jeśli wykonam git branch -a
Otrzymuję następujące informacje:
HEAD
* master
remotes/emmekappa/master
remotes/origin/HEAD -> origin/master
remotes/origin/master
Jestem zdezorientowany przez remotes/origin/HEAD -> origin/master
.
Co to jest i jak pozbyć się niejednoznacznej gałęzi.
Dotarłem do tego etapu, wykonując scalanie, w którym myślę, że dodałem niejednoznaczną gałąź.
warning: refname 'HEAD' is ambiguous.
remotes/origin/HEAD -> origin/master
nie stanowi problemu: po prostu pokazuje, która gałąź jest domyślna w zdalnymorigin
. Nazwa gałęziHEAD
to.Odpowiedzi:
Problem polega na tym, że masz gałąź o nazwie,
HEAD
która jest absolutnie niebezpieczna, ponieważ jest to symboliczna nazwa każdej gałęzi, która jest gałęzią bieżącą .Zmień nazwę:
następnie możesz go zbadać i zdecydować, co zrobić (usunąć lub zapisać pod opisową nazwą gałęzi)
(
origin/HEAD
Zdalna gałąź nie stanowi problemu)źródło
origin/HEAD
może nie być problemem, jeśli przypadkowo utworzysz gałąź nazywanąorigin/somebranch
to jest problemem (i spowoduje to ten sam „niejednoznaczny” komunikat o błędzie). Kiedy spróbujesz wyciągnąć z „jakiejś gałęzi”, skończysz ciągnąć z lokalnej (przypadkowej) gałęzi, a nie z pilota. W takim razie stwierdziłem, że sugestia flickerfly, by robićgit branch -d origin/somebranch
działa świetnie.head
(małymi literami).Spowoduje to również usunięcie gałęzi, jeśli po prostu jej nie chcesz.
Użyj kapitału,
-D
aby wymusić usunięcie:źródło
Jeśli utworzyłeś tag o nazwie
HEAD
przy użyciu ...... możesz po prostu usunąć ten tag za pomocą:
Zobacz ten przypadek: kerneltrap.org/git-tag HEAD
źródło
Oznacza to, że masz gałąź o nazwie „głowa”. Miałem ten sam problem, rozwiązałem, wykonując następujące polecenie.
źródło
Sprawdź referencje dostępne w repozytorium git. Zaobserwujesz dwa HEAD w swoim repozytorium. To sprawia, że twoja gałąź z refname HEAD jest niejednoznaczna.
Rozwiązanie:
Zmień nazwę gałęzi
LUB
Usuń gałąź
źródło