Git Checkout forklaret: Sådan checkes, ændres eller skiftes en filial i Git

Den git checkoutkommando skifter mellem filialer eller gendanner arbejder træet filer. Der er en række forskellige muligheder for denne kommando, der ikke vil blive dækket her, men du kan se på dem alle i Git-dokumentationen.

Checkout en bestemt forpligtelse

for at tjekke en bestemt forpligtelse skal du køre kommandoen:

git checkout specific-commit-id

vi kan få de specifikke forpligtelses-id'er ved at køre:

git log

Tjek en eksisterende filial

For at tjekke en eksisterende gren skal du køre kommandoen:

git checkout BRANCH-NAME

Generelt giver Git dig ikke mulighed for at tjekke en anden gren, medmindre din arbejdsmappe er ren, fordi du mister eventuelle arbejdskatalogændringer, der ikke er begået. Du har tre muligheder for at håndtere dine ændringer: 1) skrald dem, 2) begiv dem eller 3) gem dem.

Checkout en ny filial

For at oprette og tjekke en ny gren med en enkelt kommando kan du bruge:

git checkout -b NEW-BRANCH-NAME

Dette skifter dig automatisk til den nye filial.

Tjek en ny filial eller nulstil en filial til et startpunkt

Den følgende kommando svarer til at tjekke en ny gren, men bruger -B(bemærk captital B) -flagget og en valgfri START-POINTparameter:

git checkout -B BRANCH-NAME START-POINT

Hvis BRANCH-NAMEgrenen ikke findes, opretter Git den og starter den ved START-POINT. Hvis BRANCH-NAMEfilialen allerede findes, nulstiller Git filialen til START-POINT. Dette svarer til at løbe git branchmed -f.

Tving en checkout

Du kan videregive valgmuligheden -feller --forcemed git checkoutkommandoen til at tvinge Git til at skifte gren, selvom du har ikke-iscenesatte ændringer (med andre ord, indekset for arbejdstræet adskiller sig fra HEAD). Dybest set kan det bruges til at smide lokale ændringer.

Når du kører følgende kommando, ignorerer Git ikke-flettede poster:

git checkout -f BRANCH-NAME # Alternative git checkout --force BRANCH-NAME

Fortryd ændringer i din arbejdsmappe

Du kan bruge git checkoutkommandoen til at fortryde ændringer, du har foretaget i en fil i din arbejdsmappe. Dette vender filen tilbage til versionen i HEAD:

git checkout -- FILE-NAME