Git Revert vs Git Reset: Fortryd og justering af ændringer i Git-historikken

Git Revert og Git Reset er to vigtige kommandoer i Git til at fortryde og justere ændringer i commit et lagers historie. Her er en guide til, hvordan du bruger Git Revert og Git Reset:

 

Git Revert

  • Git Revert giver dig mulighed for at oprette en ny commit for at fortryde( revert) tidligere begåede ændringer.

  • Til revert en commit, brug følgende kommando:

    git revert <commit_id>
    

    Erstat <commit_id> med ID'et for det, commit du vil vende tilbage. En ny commit vil blive oprettet, som fortryder ændringerne i den valgte commit.

  • Revert ændrer ikke commit historikken, men opretter en ny commit for at fortryde ændringerne.

 

Git Reset

  • Git Reset giver dig mulighed for at gå tilbage til en tidligere tilstand ved at flytte den HEAD aktuelle gren til en bestemt commit.

  • Git Reset har tre forskellige tilstande: --soft, --mixed(default), and --hard.

  • Til reset den HEAD aktuelle gren til en commit, brug følgende kommando:

    git reset --mode <commit_id>
    

    Erstat <commit_id> med ID'et for det, commit du vil nulstille til.

  • Git Reset tilstande:

    • -soft: Flytter den HEAD og den aktuelle gren til den angivne commit, og beholder ændringerne fra den forrige commit i iscenesættelsesområdet. Brug kommandoen git reset --soft <commit_id>.
    • --mixed: Dette er standardtilstanden. Flytter den HEAD og aktuelle gren til den angivne commit og fjerner ændringerne af den forrige commit fra iscenesættelsesområdet. Brug kommandoen git reset --mixed <commit_id>.
    • --hard: Flytter den HEAD og aktuelle gren til den angivne commit og kasserer alle ændringer af den forrige commit. Vær forsigtig, når du bruger den, da alle uforpligtende ændringer vil gå tabt. Brug kommandoen git reset --hard <commit_id>.
    <commit_id>.
  • Git Reset ændrer commit historikken og kan resultere i tab af data, så brug den med forsigtighed.

 

Git Revert og Git Reset er kraftfulde værktøjer til at fortryde og justere commit-historikken i Git. Brug dem omhyggeligt for at sikre projektets stabilitet og undgå tab af data.