Denne veiledningen inneholder innhold om den dype forståelsen av normale løsnede HEAD-tilstander og løsninger for å løse løsrevet HEAD, inkludert følgende innhold:
- Hva er den normale HEAD-tilstanden i Git?
- Hva betyr frittstående hodetilstand?
- Hvilke situasjoner skaper frittstående hodetilstand?
- Hvordan løse problemer med git-detached head?
Hva er den normale HEAD-tilstanden i Git?
Den normale HEAD-tilstanden i Git er der HEAD-en din peker til gjeldende gren. Når brukeren vekslet mellom ulike grener, blir HEAD også byttet til den grenen. Sjekk ut følgende trinn for praktisk demonstrasjon.
Trinn 1: Vis loggstatus
Åpne Git Bash og vis loggen for prosjektet ved å bruke 'git logg' kommando:
git logg
For øyeblikket peker HOVEDET vårt på ' herre ' gren.
Trinn 2: Bytt gren
Bytt nå til en annen lokal filial, og kontroller deretter HEAD-pekerens posisjon. For eksempel sjekker vi ut til ' trekk ' gren:
Filialen er byttet til ' trekk '.
Trinn 3: Sjekk logg
Se loggstatusen til depotet på nytt og kontroller HEAD-tilstanden for bekreftelse:
I følge følgende utgang peker HODET vårt nå på 'funksjons'-grenen:
Så dette er det normale HEAD-scenariet i Git Bash.
Hva betyr Detached Head State?
Som vi nevnte ovenfor, oppstår en løs HEAD-tilstand når HEAD peker på commit i stedet for grenen. Når du bytter til den siste commit, vil HEAD peke på commit, og dette er den frakoblede HEAD-tilstanden. For bedre forståelse, gå gjennom den praktiske håndboken.
Trinn 1: Sjekk hodestatus
Vis først loggen for å se HEAD-tilstanden ved å kjøre denne kommandoen i Git Bash:
For øyeblikket peker HEAD på ' trekk ' gren.
Trinn 2: Sjekk ut forpliktelsen
La oss bytte HEAD til den siste forpliktelsen ved å bruke følgende kommando sammen med SHA-hashen:
Du vil se at den frakoblede HEAD-tilstanden vises når du bytter til commit i stedet for grenen.
Trinn 3: Sjekk hodestatus på nytt
Nå, hvis du viser loggen for å sjekke HEAD-tilstanden, vil du se at den peker til commit:
Her er den løsrevne HEAD-tilstanden til Git.
Hvilke situasjoner skaper frittstående HEAD-stater?
Det er to situasjoner der en løsrevet HODE-tilstand kan sees, sjekk ut tabellen nedenfor:
Situasjon 1 | Når brukeren bytter til SHA-hash-commit i stedet for grenen. |
Situasjon 2 | Når brukeren bytter til den eksterne grenen før han henter den. |
Hvordan løse Git-Detached HEAD-problemer?
La oss nå se hvordan du kan løse problemet med løsrevet HEAD. Det er ganske enkelt å løse, bare opprett en ny gren, bytt til den og foreta endringene. For å se det praktisk talt sjekk ut de gitte instruksjonene.
Trinn 1: Opprett en ny gren
Først oppretter du den nye grenen gjennom 'git branch' kommando:
Trinn 2: Bytt til den opprettede grenen
Etter det bytter du til den gjennom 'git switch' kommando og skriv inn filialnavnet:
Trinn 3: Bekreft endringer
Bekreft de anvendte endringene og spesifiser meldingen ved å bruke ' m ' stikkord:
Trinn 4: Sjekk logg
Sjekk nå statusen til HEAD ved å vise loggen:
Slik kan du løse tilstanden løsrevet HODE.
Konklusjon
Git detached HEAD-tilstanden dukket opp når HEAD pekte på commit i stedet for grenen. For å løse det, bare opprette en ny filial, bytt til den og foreta endringene. Du har lært detaljert om løsrevne HEAD-problemer i Git.