Hoppa till innehåll

Vad är en branch?

  • Vad en branchBranchEn egen utvecklingslinje i ett repository, där man kan göra ändringar utan att påverka huvudversionen.Läs mer om branch, på svenska gren, är.
  • Att en gren bara är en pekare på en commit, inte en kopia av filerna.
  • Vad HEAD är, och hur du ser vilken gren du står på.

Hittills har alla dina commits hamnat på en enda rad, efter varandra. Det fungerar så länge du gör en sak i taget. Men tänk dig att du vill prova en ny resrutt utan att förstöra resplanen som redan fungerar, eller att två personer vill ändra resplanen samtidigt. Då behöver du kunna arbeta på flera spår parallellt. Det är vad grenar är till för.

I modul 3 såg du att varje commitCommitEn sparad version av projektet i Git, med en beskrivning av vad som ändrats, vem som gjorde det och när.Läs mer om commit pekar bakåt på den commit den bygger på. En gren är en etikett som pekar på en commit. När du gör en ny commit på grenen flyttas etiketten fram till den nya commiten.

Grenen du har använt hela tiden heter main. Den skapades när du körde git init. Det finns inget speciellt med den. Den är en vanlig gren som de flesta projekt har kommit överens om ska vara huvudversionen.

Tre commits i en kedja: 226c08c, 7620fac och 8923e85. Grenen main pekar på 7620fac och grenen dag-4 på den nyaste, 8923e85. HEAD pekar på dag-4.

I bilden finns två grenar. main pekar på 7620fac. Grenen dag-4 har en commit till, 8923e85, där en fjärde dag har lagts till. Resplanen i main är orörd.

HEAD är Gits sätt att hålla reda på vilken gren du står på just nu. Det är den grenen som flyttas fram när du gör en commit, och det är dess version av filerna som syns i arbetskatalogen.

git branch visar vilka grenar som finns. Stjärnan visar vilken du står på:

Terminal
$ git branch
* main

När det finns fler grenar listas alla, i bokstavsordning:

Terminal
$ git branch
* dag-4
main

Här står du på dag-4. git status säger samma sak på sin första rad, till exempel On branch main.

1. Vad är en gren (branch) i Git?
Visa rätt svar
  • En etikett som pekar på en commit: Grenen flyttas fram till den nya commiten när du gör en commit på den.
2. git branch visar "* dag-4" och " main". Vad betyder stjärnan?
Visa rätt svar
  • Att du står på grenen dag-4: Stjärnan visar samma gren som HEAD pekar på.
3. Vad är sant om grenen main? (Välj alla som stämmer)
Visa rätt svar
  • Den är en vanlig gren
  • De flesta projekt använder den som huvudversion

  • En gren (branch) är en etikett som pekar på en commit. Den flyttas fram när du gör en ny commit.
  • Ingenting kopieras när du skapar en gren, och därför går det snabbt.
  • main är en vanlig gren som används som huvudversion.
  • HEAD visar vilken gren du står på. git branch markerar den med en stjärna.