Git Checkout (Norsk)

Denne siden er en undersøkelse av git checkout -kommandoen. Det vil dekke brukseksempler og kantsaker. I Git-termer er en «kassa» handlingen med å bytte mellom forskjellige versjoner av en målenhet. Kommandoen git checkout opererer på tre forskjellige enheter: filer, forpliktelser og grener. I tillegg til definisjonen av «kassa» brukes uttrykket «utsjekking» ofte for å antyde handlingen med å utføre git checkout -kommandoen. I emnet Angre endringer så vi hvordan git checkout kan brukes til å se gamle forpliktelser. Fokus for flertallet av dette dokumentet vil være kasseoperasjoner på filialer.

Utsjekking av grener ligner på å sjekke ut gamle forpliktelser og filer ved at arbeidskatalogen er oppdatert for å matche den valgte grenen / revisjonen; imidlertid blir nye endringer lagret i prosjektloggen – det vil si at det ikke er en skrivebeskyttet operasjon.

Sjekke ut grener

git checkout kommando lar deg navigere mellom grenene opprettet av git branch. Når du sjekker ut en gren, oppdateres filene i arbeidskatalogen slik at de samsvarer med versjonen som er lagret i den grenen, og den forteller Git å registrere alle nye forpliktelser på den grenen. Tenk på det som en måte å velge hvilken utviklingslinje du jobber med.

Å ha en egen filial for hver nye funksjon er et dramatisk skifte fra en tradisjonell SVN-arbeidsflyt. Det gjør det latterlig enkelt å prøve nye eksperimenter uten frykt for å ødelegge eksisterende funksjonalitet, og det gjør det mulig å jobbe med mange ikke-relaterte funksjoner samtidig. I tillegg tilrettelegger filialer også for flere samarbeidsflyter.

Kommandoen git checkout kan av og til forveksles med git clone. Forskjellen mellom de to kommandoene er at klon fungerer for å hente kode fra et eksternt lager, alternativt fungerer kassen for å bytte mellom versjoner av kode som allerede er på det lokale systemet.

Bruk: Eksisterende grener

Forutsatt at repoen du jobber i inneholder eksisterende grener, kan du bytte mellom disse grenene ved hjelp av git checkout. For å finne ut hvilke grener som er tilgjengelige og hva det nåværende grennavnet er, utfør git branch.

 

Eksemplet ovenfor viser hvordan du viser en liste over tilgjengelige grener ved å utføre git branch kommando, og bytt til en spesifisert gren, i dette tilfellet feature_inprogress_branch.

Nye grener

Git checkout fungerer hånd i hånd med git branch. git branch -kommandoen kan brukes til å opprette en ny gren. Når du vil starte en ny funksjon, oppretter du en ny gren av ved hjelp av git branch new_branch. Når du er opprettet, kan du bruke git checkout new_branch for å bytte til den grenen. I tillegg godtar kommandoen git checkout et -b -argument som fungerer som en praktisk metode som vil opprette den nye grenen og umiddelbart bytte til den. Du kan jobbe med flere funksjoner i et enkelt arkiv ved å bytte mellom dem med git checkout.

Eksemplet ovenfor samtidig oppretter og sjekker ut . Alternativet -b er et bekvemmelighetsflagg som forteller Git å kjøre git branch før du kjører git checkout .

Som standard git checkout -b vil basere new-branch nåværende HEAD. En valgfri tilleggsparameter kan sendes til git checkout. I eksemplet ovenfor sendes som deretter baserer new-branch av existing-branch i stedet for gjeldende HEAD.

Bytte avdelinger

Bytte av grener er en grei handling. Å utføre følgende vil peke HEAD til tuppen av .

Git sporer en historie med kasseoperasjoner i refloggen. Du kan utføre git reflog for å se historikken.

Git Checkout a Remote Branch

Når du samarbeider med et team, er det vanlig å bruke ekstern repositories. Disse arkivene kan være vert og deles, eller de kan være en annen kollegas lokale kopi. Hvert eksternt arkiv vil inneholde sitt eget sett med grener. For å kasse en ekstern gren må du først hente innholdet i grenen. >

I moderne versjoner av Git kan du deretter sjekke den eksterne grenen som en lokal gren.

Eldre versjoner av Git krever at det opprettes en ny gren basert på remote.

I tillegg kan du kasse en ny lokalfilial og tilbakestille den til de eksterne grenene sist forpliktet.

 

Frittliggende HEADS

Nå som vi har sett de tre viktigste bruken av git checkout på grener, er det viktig å diskutere "detached HEAD” tilstand. Husk at HEAD er Gits måte å referere til gjeldende øyeblikksbilde. Internt er git checkout kommandoen oppdaterer bare HEAD for å peke på enten den angitte grenen eller begå. Når den peker på en gren, klager ikke Git, men når du sjekker ut en commit, bytter til en "detached HEAD” -tilstand.

Dette er en advarsel som forteller deg at alt du gjør er «løsrevet» fra resten av prosjektets utvikling. Hvis du skulle begynne å utvikle en funksjon mens det i en frittliggende HEAD tilstand, ville det ikke være noen gren som lar deg komme tilbake t o det. Når du uunngåelig sjekker ut en annen gren (f.eks. For å slå sammen funksjonen din), vil det ikke være noen måte å referere til funksjonen din:

Poenget er, utviklingen din skal alltid skje på en gren – aldri på en frittliggende HEAD. Dette sørger for at du alltid har en referanse til de nye forpliktelsene dine. Men hvis du bare ser på en gammel kommisjon, spiller det ingen rolle om du er i en frittliggende HEAD -status eller ikke.

Sammendrag

Denne siden fokuserte på bruk av kommandoen git checkout når du bytter gren. I sammendrag endrer git checkout, når det brukes på grener, målet for HEAD ref. Den kan brukes til å lage grener, bytte gren og kasse eksterne grener. git checkout -kommandoen er et viktig verktøy for standard Git-drift. Det er en motstykke til git merge. Kommandoene git checkout og git merge er viktige verktøy for å aktivere git workflows.

Write a Comment

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *