2013-08-22 10 views
8

Non so perché il mio tentativo di rinominare il ramo locale sia fallito. Fondamentalmente ho clonato il progetto, poi ho anche un sottomodulo all'interno del progetto e ho scaricato anche il codice del sottomodulo. Tuttavia, quando uso git branch all'interno del modulo, ho:git: rinomina ramo locale fallito

* (no branch) 
    master 

Il codice è come se fossi su un altro ramo, ma l'uscita dimostra che non ha un nome. Poi ho cercato online per trovare come rinominare filiale locale e ho ottenuto questo:

git branch -m <newname> 

Dopo aver eseguito questo comando git mi ha dato questo errore:

error: refname refs/heads/HEAD not found 
fatal: Branch rename failed 

Qualcuno sa perché questo accade? Grazie.

risposta

19

Siete attualmente in stato di testa staccata. È necessario eseguire il checkout di un nuovo ramo per associarlo al commit corrente:

git checkout -b new_branch 
+0

Hai ragione! Pensavo che git non riconoscesse i rami con lo stesso nome di un ramo, e il tuo comando stava creando un nuovo ramo, ma risulta che funzioni. Grazie. –

1

La mia ipotesi è che non ci si trovi in ​​un ramo denominato "(nessun ramo)", ma piuttosto non su un ramo.

Se primo maestro checkout:

git checkout master 

e quindi creare un nuovo ramo:

git checkout -b new_branch 

che far sembrare che ci si aspetterebbe.