Forgren og flet dine ændringer

Fuldført

Når du arbejder med Bicep-kode, er det almindeligt at skulle gøre mere end én ting ad gangen. Her er f.eks. to scenarier, hvor du kan arbejde med dit legetøjsfirmas websted:

  • Dit websteds udviklingsteam ønsker din hjælp til at opdatere Bicep-filer med betydelige ændringer. Men teamet ønsker ikke, at disse ændringer skal gå live endnu. Du skal være i stand til at foretage mindre tweaks til den aktuelle live-version af hjemmesiden parallelt med arbejdet med den nye version.
  • Du arbejder på eksperimentelle ændringer, som du mener vil hjælpe med at forbedre webstedets ydeevne. Disse ændringer er dog foreløbige. Du vil ikke anvende dem på liveversionen af webstedet, før du er klar.

I dette undermodul får du mere at vide om Git-forgreninger.

Seddel

Kommandoerne i dette undermodul vises for at illustrere begreber. Kør ikke kommandoerne endnu. Du skal snart øve dig i det, du lærer her.

Hvad er forgreninger?

En forgrening giver dig mulighed for at have flere aktive kopier af dine filer. Du kan oprette og skifte mellem forgreninger, når du vil. Når du er færdig med at arbejde med en forgrening, kan du flette den til en anden forgrening. Eller du kan slette den, hvilket fjerner alle ændringerne.

Det er almindeligt at bruge forgreninger til alt dit arbejde. Du angiver ofte én forgrening som den primære forgrening, der repræsenterer den kendte eller direkte version af dine filer. Efter konvention kaldes denne forgrening normalt primære. Du kan oprette et vilkårligt antal andre forgreninger. Når dine ændringer i en forgrening er klar, fletter du forgreningen til den primære forgrening.

Opret og tjek en forgrening ud

Det er hurtigt og nemt at oprette en forgrening i Git. Der er et par måder at gøre det på, men den nemmeste måde er typisk at bruge kommandoen git checkout. Her er et eksempel på, hvordan vi opretter en ny forgrening med navnet mine eksperimentelle ændringer:

git checkout -b my-experimental-changes

Denne kommando gør faktisk to ting: Den opretter min-eksperimentelle-ændringer gren, og den tjekker den nyoprettede forgrening ud. En udtjekning betyder, at kopien af de filer, du ser i mappen, afspejler indholdet af forgreningen. Hvis du har to forgreninger med forskellige sæt ændringer, kan du bruge den ene forgrening til at skifte mellem de to sæt ændringer.

Du kan også skifte til en eksisterende forgrening ved hjælp af kommandoen git checkout. I dette eksempel kan du se forgreningen :

git checkout main

Seddel

Du skal normalt bekræfte dine ændringer, før du kan tjekke en anden forgrening ud. Git advarer dig, hvis du ikke kan tjekke ud.

Arbejde på en forgrening

Når du har skiftet til en forgrening, kan du bekræfte filer på samme måde som normalt. Faktisk har alt, hvad du har gjort indtil nu, været på en gren. Du arbejdede på forgreningen , som er standardgrenen, når du opretter et nyt lager.

Når du foretager nogle ændringer, mens du har tjekket en forgrening ud, er bekræftelsen knyttet til forgreningen. Når du skifter til en anden forgrening, kan du sandsynligvis ikke se bekræftelsen i git log oversigt, før du fletter forgreningen.

Flet forgreninger

Forgreninger er en god måde at adskille dit igangværende arbejde fra den aktuelle liveversion af din Bicep-kode på. Men når du er færdig med at foretage ændringer af dine filer på en forgrening, vil du ofte flette ændringerne tilbage til din primære forgrening.

Når du arbejder på én forgrening, kan du flette en anden forgrenings ændringer til din aktuelle forgrening ved hjælp af kommandoen git merge.

Seddel

Sørg for at tjekke forgreningen for flettedestinationen (ofte kaldet destinations--forgreningen), før du fletter. Husk, at du fletter fra anden forgrening til din aktuelle arbejdsgren.

Her er et eksempel, der viser, hvordan du kan tjekke den hovedforgrening og derefter flette ændringerne fra forgreningen Mine eksperimentelle ændringer til den primære forgrening. Til sidst sletter du mine eksperimentelle ændringer gren, fordi du ikke længere har brug for den.

git checkout main
git merge my-experimental-changes
git branch -d my-experimental-changes

Drikkepenge

Når du arbejder med andre personer, er det almindeligt at bruge pullanmodninger til at flette dine ændringer i stedet for direkte at flette forgreninger. Du får snart mere at vide om samarbejds- og pullanmodninger.

Flettekonflikter

Når Git fletter ændringer fra én forgrening til en anden, ser den på de filer, der er blevet ændret, og den forsøger at flette ændringerne sammen. Nogle gange har du måske foretaget ændringer af de samme kodelinjer på to forskellige forgreninger. I disse situationer kan Git ikke vælge, hvilken version af koden der er den korrekte version, så den opretter i stedet en flettekonflikt.

Vi diskuterer ikke fletningskonflikter i dybden i dette modul, men det er vigtigt at vide, at der kan opstå flettekonflikter. Og det er mere almindeligt, når du samarbejder med andre personer. I oversigten for dette modul indeholder vi et link til flere oplysninger om, hvordan Git og Visual Studio Code hjælper dig med at løse flettekonflikter.

Git-arbejdsprocesser

I dette modul lærer du kun om de grundlæggende funktioner i forgreninger. Men forgreninger er effektive og giver dig fleksibilitet i den måde, du arbejder på. Du kan f.eks. oprette forgreninger fra andre forgreninger og flette en forgrening med en hvilken som helst anden forgrening. Du kan bruge forgreninger til at oprette mange forskellige arbejdsprocesser, der understøtter den måde, du og dit team kan lide at arbejde på.

I dette modul bruger vi en simpel arbejdsproces kaldet trunk-baseret udvikling. I denne arbejdsproces har du en enkelt trunk forgrening. Vi bruger f.eks. primære i denne artikels eksempler. Denne forgrening repræsenterer den kendte version af din kode. Du opretter forgreninger ud for dette bagagerum, når du foretager ændringer eller udfører noget arbejde.

Trunk-baseret udvikling fraråder at foretage ændringer direkte på stammeforgreningen. Du forsøger kun at bevare andre forgreninger i kort tid, hvilket hjælper med at minimere fletningskonflikter. Derefter fletter og sletter du disse forgreninger, efterhånden som du fuldfører dele af arbejdet.

Der er andre arbejdsprocesser, der er almindelige i teammiljøer, hvor du måske vil styre, hvor ofte du frigiver dine ændringer. I oversigten for dette modul indeholder vi links til flere oplysninger om Git-arbejdsprocesser.