Denne vejledning indeholder indhold om den dybe forståelse af normale løsrevet HEAD-tilstande og løsninger til løsning af løsrevet HEAD, herunder følgende indhold:
- Hvad er den normale hovedtilstand i Git?
- Hvad betyder detached HEAD State?
- Hvilke situationer skaber løsrevet hovedtilstand?
- Hvordan løses problemer med Git-detached-hoved?
Hvad er den normale hovedtilstand i Git?
Den normale HEAD-tilstand i Git er, hvor dit HEAD peger på den aktuelle gren. Når brugeren skiftede mellem forskellige grene, skiftes HEAD også til den gren. Tjek følgende trin for praktisk demonstration.
Trin 1: Vis logstatus
Åbn Git Bash og vis loggen for projektet ved hjælp af 'git log' kommando:
git log
I øjeblikket peger vores HOVED på ' mestre ' afdeling.
Trin 2: Skift filial
Skift nu til en anden lokal filial, og kontroller derefter HEAD-markørens position. For eksempel tjekker vi ud til ' funktion ' afdeling:
Filialen er skiftet til ' funktion ”.
Trin 3: Tjek log
Se logstatus for depotet igen, og kontroller HEAD-tilstanden for verifikation:
Ifølge følgende output peger vores HEAD nu på 'feature'-grenen:
Så dette er det normale HEAD-scenarie i Git Bash.
Hvad betyder Detached Head State?
Som vi nævnte ovenfor, opstår en adskilt HEAD-tilstand, når HEAD'et peger på commit i stedet for grenen. Når du skifter til den seneste commit, vil dit HEAD pege på commit, og dette er den adskilte HEAD-tilstand. Gå gennem den praktiske manual for bedre forståelse.
Trin 1: Tjek hovedstatus
Vis først loggen for at se HEAD-tilstanden ved at køre denne kommando i Git Bash:
I øjeblikket peger HEAD på ' funktion ' afdeling.
Trin 2: Tjek forpligtelsen
Lad os skifte HEAD til den seneste commit ved at bruge følgende kommando sammen med SHA-hash:
Du vil se, at den adskilte HEAD-tilstand vises, når du skifter til commit i stedet for grenen.
Trin 3: Tjek hovedstatus igen
Nu, hvis du viser loggen for at kontrollere HEAD-tilstanden, vil du se, at den peger på commit:
Her er den løsrevne HEAD-tilstand af Git.
Hvilke situationer skaber løsrevne HEAD-stater?
Der er to situationer, hvor en løsrevet HEAD-tilstand kan ses, se nedenstående tabel:
Situation 1 | Når brugeren skifter til SHA-hash-commit i stedet for filialen. |
Situation 2 | Når brugeren skifter til den eksterne filial, før den hentes. |
Hvordan løses problemer med Git-detached HEAD?
Lad os nu se, hvordan du kan løse problemet med løsrevet HEAD. Det er ret nemt at løse, bare opret en ny filial, skift til den og forpligt ændringerne. For at se det praktisk talt, tjek de givne instruktioner.
Trin 1: Opret en ny filial
Først skal du oprette den nye gren gennem 'git branch' kommando:
Trin 2: Skift til den oprettede filial
Skift derefter til det gennem 'git switch' kommando og skriv filialnavnet:
Trin 3: Bekræft ændringer
Bekræft de anvendte ændringer og angiv meddelelsen ved at bruge ' m ' tag:
Trin 4: Tjek log
Tjek nu status for HEAD ved at vise loggen:
Sådan kan du løse tilstanden løsrevet HOVED.
Konklusion
Git detached HEAD-tilstanden dukkede op, når HEAD'et pegede på commit i stedet for grenen. For at løse det skal du bare oprette en ny filial, skifte til den og forpligte ændringerne. Du har lært detaljeret om detached HEAD-problemer i Git.