Tilbageførsel af Commits
Stryg for at vise menuen
I det omfattende landskab af versionskontrol med Git opstår der ofte situationer, hvor det er nødvendigt at fortryde ændringer indført af et bestemt commit. Dette kan skyldes forskellige årsager, såsom at opdage en fejl, indse at en funktion ikke er klar til produktion, eller blot ønske om at tage en anden tilgang.
Heldigvis tilbyder Git kommandoen git revert til at oprette et nyt commit, der fortryder de ændringer, som det specifikke commit har indført, ved at lave den modsatte ændring af det pågældende commit.
Fortryd det seneste commit
For at fortryde det seneste commit, brug følgende kommando:
git revert HEAD
HEAD er en markør, der peger på det seneste commit på den aktuelle gren.
Da der kun er én gren, peger HEAD på seneste commit. Denne kommando opretter en ny commit, der fortryder ændringerne fra den forrige. Git åbner standard teksteditoren for at tillade redigering af commit-beskeden, hvis det er nødvendigt. Gem og luk editoren for at fuldføre fortrydelsen.
Eksempel på arbejdsgang
Tilføj først en ny linje til filen recipe.txt med det næste trin og committer ændringen direkte, uden at bruge staging-området:
echo "8. Peel the eggs" > recipe.txt
git commit -a -m "Add another step to the recipe"
Vis nu de detaljerede oplysninger om denne commit ved at bruge kommandoen git show med HEAD:
git show HEAD
Ups, alle tidligere linjer blev slettet, fordi den forkerte output-operator blev brugt — > i stedet for >>, hvilket overskrev filen.
Ingen grund til bekymring; brug kommandoen git revert for at fortryde disse ændringer i den seneste commit:
git revert HEAD
Som du kan se, åbnes standardteksteditoren (Vim i dette tilfælde) med en standard commit-besked. Lad den være uændret for nu, men i rigtige projekter anbefales det at inkludere årsagen til tilbagerulningen, for eksempel:
Revert "Add another step to the recipe"
Reason for rollback: the recipe.txt was overwritten.
This reverts commit b1148490543882f038069a0233a5d7e0b33f6221.
For at gemme ændringer og afslutte Vim, tryk på Escape-tasten og to store Z-bogstaver.
Til sidst kan du se ændringerne i de to seneste commits:
git log -p -2
Som forventet blev der oprettet en ny commit med de omvendte ændringer.
Brug piletasterne til at rulle op eller ned, og tryk på q-tasten for at afslutte.
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat