Comprensió i resolució del problema de Git Detached Head

Comprensio I Resolucio Del Problema De Git Detached Head



A Git Bash, HEAD és la branca on treballa el desenvolupador. Com a usuari professional de Git Bash, potser haureu sentit a parlar de l'estat HEAD separat. Alguns usuaris troben que aquesta condició és alarmant, només vol dir que el vostre HEAD apunta a la confirmació específica en lloc de la branca.

Aquesta guia conté contingut sobre la comprensió profunda dels estats normals de HEAD desconnectat i solucions per resoldre el HEAD desconnectat, inclòs el contingut següent:

Quin és l'estat HEAD normal a Git?

L'estat HEAD normal a Git és on el vostre HEAD apunta a la branca actual. Quan l'usuari canvia entre diferents branques, el HEAD també es canvia a aquesta branca. Consulteu els passos següents per a la demostració pràctica.







Pas 1: Mostra l'estat del registre
Obriu Git Bash i visualitzeu el registre del projecte amb el botó 'Registre de git' comandament:



git log



Actualment, el nostre CAP assenyala el ' mestre ” branca.





Pas 2: Canvia de branca
Ara, canvieu a una altra branca local i, a continuació, comproveu la posició del punter HEAD. Per exemple, estem consultant el ' característica ” branca:

git checkout característica



La branca s'ha canviat a ' característica ”.

Pas 3: comproveu el registre
Torneu a veure l'estat del registre del dipòsit i comproveu l'estat HEAD per verificar-lo:

git log

D'acord amb la sortida següent, el nostre HEAD ara apunta a la branca 'funció':

Per tant, aquest és l'escenari HEAD normal a Git Bash.

Què significa l'estat de cap independent?

Com hem esmentat anteriorment, es produeix un estat HEAD desconnectat quan el HEAD apunta a la confirmació en lloc de la branca. Quan canvieu a l'últim commit, el vostre HEAD apuntarà al commit, i aquest és l'estat HEAD desconnectat. Per a una millor comprensió, passeu pel manual pràctic.

Pas 1: comproveu l'estat del cap
Primer, mostreu el registre per veure l'estat HEAD executant aquesta ordre a Git Bash:

git log --en línia

Actualment, HEAD assenyala el ' característica ” branca.

Pas 2: comproveu el compromís
Canviem HEAD a l'últim commit mitjançant l'ordre següent juntament amb el hash SHA:

git checkout b8d840c

Veureu que l'estat HEAD desconnectat apareix en canviar a la confirmació en lloc de la branca.

Pas 3: torneu a comprovar l'estat del cap
Ara, si mostreu el registre per comprovar l'estat HEAD, veureu que apunta a la confirmació:

git log --en línia

Aquí teniu l'estat HEAD desconnectat de Git.

Quines situacions creen estats HEAD separats?

Hi ha dues situacions en què es pot veure un estat HEAD separat, consulteu la taula següent:

Situació 1 Quan l'usuari canvia a la confirmació hash SHA en lloc de la branca.
Situació 2 Quan l'usuari canvia a la branca remota abans de recuperar-la.

Com resoldre els problemes de Git-Detached HEAD?

Ara, anem a veure com podeu resoldre el problema de HEAD desconnectat. És bastant senzill de resoldre, només cal que creeu una branca nova, canvieu-hi i confirmeu els canvis. Per visualitzar-lo pràcticament, consulteu les instruccions donades.

Pas 1: creeu una nova sucursal
Primer, creeu la nova branca a través de 'branca de git' comandament:

branca git nou

Pas 2: canvieu a la branca creada
Després d'això, canvieu-hi a través de 'canvi de git' comanda i escriviu el nom de la branca:

git canvi de nou

Pas 3: Comprometeu els canvis
Confirmeu els canvis aplicats i especifiqueu el missatge amb “ m ' etiqueta:

git commit -m 'branca canviada'

Pas 4: comproveu el registre
Ara, comproveu l'estat del HEAD mostrant el registre:

git log

Així és com podeu resoldre l'estat HEAD desconnectat.

Conclusió

L'estat de Git detached HEAD va aparèixer quan el HEAD apuntava a la confirmació en lloc de la branca. Per resoldre'l, només cal que creeu una branca nova, canvieu-hi i confirmeu els canvis. Heu après detallat sobre els problemes de HEAD desconnectats a Git.