Comprensione e risoluzione del problema Git Detached Head

Comprensione E Risoluzione Del Problema Git Detached Head



In Git Bash, HEAD è il ramo in cui lavora lo sviluppatore. Come utente professionale di Git Bash, potresti aver sentito parlare dello stato HEAD distaccato. Alcuni utenti trovano questa condizione in realtà allarmante, significa semplicemente che il tuo HEAD punta al commit specifico invece che al ramo.

Questa guida contiene contenuti sulla comprensione approfondita dei normali stati di HEAD distaccata e soluzioni per risolvere la HEAD distaccata, inclusi i seguenti contenuti:

Qual è lo stato HEAD normale in Git?

Il normale stato HEAD in Git è dove il tuo HEAD punta al ramo corrente. Quando l'utente passa da un ramo all'altro, anche l'HEAD passa a quel ramo. Controlla i seguenti passaggi per una dimostrazione pratica.







Passaggio 1: Visualizza lo stato del registro
Apri Git Bash e visualizza il log del progetto utilizzando il file “registro git” comando:



registro git



Attualmente, la nostra TESTA punta al ' maestro ' ramo.





Passaggio 2: cambiare ramo
Ora passa a un altro ramo locale e controlla la posizione del puntatore HEAD. Ad esempio, stiamo controllando il ' caratteristica ' ramo:

git checkout caratteristica



Il ramo è stato cambiato in “ caratteristica ”.

Passaggio 3: controlla il registro
Visualizza nuovamente lo stato del registro del repository e controlla lo stato HEAD per la verifica:

registro git

Secondo il seguente output, il nostro HEAD ora punta al ramo 'feature':

Quindi, questo è il normale scenario HEAD in Git Bash.

Cosa significa stato di testa distaccato?

Come accennato in precedenza, uno stato HEAD distaccato si verifica quando HEAD punta al commit anziché al ramo. Quando passi all'ultimo commit, il tuo HEAD punterà al commit e questo è lo stato HEAD distaccato. Per una migliore comprensione, sfoglia il manuale pratico.

Passaggio 1: verificare lo stato della testa
Innanzitutto, visualizza il log per visualizzare lo stato HEAD eseguendo questo comando in Git Bash:

registro git --in linea

Attualmente, HEAD punta al “ caratteristica ' ramo.

Passaggio 2: controlla il commit
Passiamo HEAD all'ultimo commit utilizzando il seguente comando insieme all'hash SHA:

git checkout b8d840c

Vedrai che lo stato HEAD scollegato appare quando si passa al commit invece che al ramo.

Passaggio 3: controllare nuovamente lo stato della testa
Ora, se visualizzi il log per controllare lo stato HEAD, vedrai che punta al commit:

registro git --in linea

Ecco lo stato HEAD distaccato di Git.

Quali situazioni creano stati HEAD distaccati?

Ci sono due situazioni in cui è possibile vedere uno stato HEAD scollegato, controlla la tabella seguente:

Situazione 1 Quando l'utente passa al commit hash SHA anziché al ramo.
Situazione 2 Quando l'utente passa al ramo remoto prima di recuperarlo.

Come risolvere i problemi HEAD distaccati da Git?

Ora vediamo come risolvere il problema dell'HEAD staccato. È piuttosto semplice da risolvere, basta creare un nuovo ramo, passare ad esso e confermare le modifiche. Per visualizzarlo praticamente controlla le istruzioni fornite.

Passaggio 1: crea un nuovo ramo
Innanzitutto, crea il nuovo ramo tramite il file “ramo git” comando:

ramo git nuovo

Passaggio 2: passa al ramo creato
Successivamente, passa ad esso tramite il file “interruttore git” comando e digitare il nome del ramo:

idiota cambiare nuovo

Passaggio 3: conferma delle modifiche
Conferma le modifiche applicate e specifica il messaggio utilizzando ' M ' etichetta:

gitcommit -M 'ramo commutato'

Passaggio 4: controlla il registro
Ora controlla lo stato dell'HEAD visualizzando il registro:

registro git

Ecco come puoi risolvere lo stato HEAD scollegato.

Conclusione

Lo stato Git staccato HEAD appariva quando HEAD puntava al commit invece che al ramo. Per risolverlo, basta creare un nuovo ramo, passare ad esso e confermare le modifiche. Hai appreso in dettaglio i problemi di HEAD distaccato in Git.