Git-gren forklaret: Sådan slettes, afkrydsningsfelt, oprettes og omdøber en filial i Git

Git gren

Gits forgreningsfunktionalitet giver dig mulighed for at oprette nye grene af et projekt for at teste ideer, isolere nye funktioner eller eksperimentere uden at påvirke hovedprojektet.

Indholdsfortegnelse

  • Se filialer
  • Checkout en filial
  • Opret en ny filial
  • Omdøb en gren
  • Slet en filial
  • Sammenlign filialer
  • Hjælp med Git Branch
  • Mere information

Se filialer

For at se filialerne i et Git-arkiv skal du køre kommandoen:

git branch

For at se både fjernsporingsgrene og lokale grene skal du køre kommandoen:

git branch -a

Der vil være en stjerne (*) ved siden af ​​den gren, du er i øjeblikket på.

Der er en række forskellige muligheder, du kan inkludere i for git branchat se forskellige oplysninger. For flere detaljer om filialerne kan du bruge indstillingen -v(eller -vv, eller --verbose). Listen over grene inkluderer SHA-1-værdien og forpligter emnelinje til HEADhver gren ved siden af ​​dens navn.

Du kan bruge indstillingen -a(eller --all) til at vise de lokale grene samt eventuelle eksterne grene til et lager. Hvis du kun vil se de eksterne grene, skal du bruge indstillingen -r(eller --remotes).

Checkout en 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 (se Git-kassen for detaljer) eller
  2. begå dem (se Git-forpligtelse for detaljer) eller
  3. stash dem (se Git stash for detaljer).

Opret en ny filial

For at oprette en ny gren skal du køre kommandoen:

git branch NEW-BRANCH-NAME

Bemærk, at denne kommando kun opretter den nye gren. Du bliver nødt til at køre for git checkout NEW-BRANCH-NAMEat skifte til det.

Der er en genvej til at oprette og tjekke en ny gren på én gang. Du kan videregive -bindstillingen (for filial) med git checkout. Følgende kommandoer gør det samme:

# Two-step method git branch NEW-BRANCH-NAME git checkout NEW-BRANCH-NAME # Shortcut git checkout -b NEW-BRANCH-NAME

Når du opretter en ny gren, vil den omfatte alle forpligtelser fra den overordnede filial. Overordnet gren er den gren, du befinder dig i, når du opretter den nye gren.

Omdøb en gren

For at omdøbe en gren skal du køre kommandoen:

git branch -m OLD-BRANCH-NAME NEW-BRANCH-NAME # Alternative git branch --move OLD-BRANCH-NAME NEW-BRANCH-NAME

Slet en filial

Git lader dig ikke slette en gren, som du aktuelt er i. Du skal først tjekke en anden gren og derefter køre kommandoen:

git branch -d BRANCH-TO-DELETE # Alternative: git branch --delete BRANCH-TO-DELETE

Den gren, du skifter til, gør en forskel. Git vil kaste en fejl, hvis ændringerne i den gren, du forsøger at slette, ikke er fuldstændigt flettet i den aktuelle gren. Du kan tilsidesætte dette og tvinge Git til at slette grenen med -Dindstillingen (bemærk store bogstaver) eller ved hjælp af --forceindstillingen med -deller --delete:

git branch -D BRANCH-TO-DELETE # Alternatives git branch -d --force BRANCH-TO-DELETE git branch --delete --force BRANCH-TO-DELETE

Sammenlign filialer

Du kan sammenligne grene med git diffkommandoen:

git diff FIRST-BRANCH..SECOND-BRANCH

Du får vist farvet output for ændringer mellem grene. For alle linjer, der er ændret, vil SECOND-BRANCHversionen være en grøn linje, der starter med et "+", og FIRST-BRANCHversionen vil være en rød linje, der starter med en "-". Hvis du ikke vil have, at Git skal vise to linjer for hver ændring, kan du bruge --color-wordsindstillingen. I stedet viser Git en linje med slettet tekst i rødt og tilføjet tekst i grønt.

Hvis du vil se en liste over alle de grene, der er fuldstændigt flettet i din nuværende gren (med andre ord, din nuværende gren inkluderer alle ændringer af de andre grene, der er angivet), skal du køre kommandoen git branch --merged.

Hjælp med Git Branch

Hvis du glemmer, hvordan du bruger en indstilling eller ønsker at udforske anden funktionalitet omkring git branchkommandoen, kan du køre en af ​​disse kommandoer:

git help branch git branch --help man git-branch

Mere information:

  • den git mergekommando
  • den git checkoutkommando
  • den git commitkommando
  • den git stashkommando
  • Git-dokumentation: filial