Git Revert vs Git Reset: Poništavanje i prilagođavanje promjena u Git povijesti

Git Revert i Git Reset dvije su važne naredbe u Gitu za poništavanje i prilagođavanje promjena u commit povijesti repozitorija. Evo vodiča za korištenje Git Revert i Git Reset:

 

Git Revert

  • Git Revert omogućuje vam da stvorite novu predaju za poništavanje( revert) prethodno izvršenih promjena.

  • Za, koristite sljedeću naredbu revert: commit

    git revert <commit_id>
    

    Zamijenite <commit_id> ID-om koji commit želite vratiti. Stvorit će se novi commit, čime se poništavaju promjene u odabranom commit.

  • Revert ne mijenja commit povijest, ali stvara novu commit za vraćanje promjena.

 

Git Reset

  • Git Reset omogućuje vam da se vratite u prethodno stanje pomicanjem HEAD trenutne grane na određeno uvrštavanje.

  • Git Reset ima tri različita načina: --soft, --mixed(default), and --hard.

  • Za reset i HEAD trenutnu granu na commit, koristite sljedeću naredbu:

    git reset --mode <commit_id>
    

    Zamijenite <commit_id> ID-om na koji commit želite vratiti.

  • Git Reset načini rada:

    • -soft: Premješta HEAD trenutnu granu u navedenu granu commit, zadržavajući promjene prethodne commit u pripremnom području. Koristite naredbu git reset --soft <commit_id>.
    • --mixed: Ovo je zadani način rada. Premješta trenutnu HEAD i trenutnu granu u navedeno uvrštavanje i uklanja promjene prethodne commit iz pripremnog područja. Koristite naredbu git reset --mixed <commit_id>.
    • --hard: Premješta HEAD trenutnu granu na navedenu commit i odbacuje sve promjene prethodne commit. Budite oprezni pri korištenju jer će sve neizvršene promjene biti izgubljene. Koristite naredbu git reset --hard <commit_id>.
    <commit_id>.
  • Git Reset mijenja commit povijest i može dovesti do gubitka podataka, stoga ga koristite s oprezom.

 

Git Revert i Git Reset moćni su alati za poništavanje i prilagođavanje povijesti predaja u Gitu. Koristite ih pažljivo kako biste osigurali stabilnost projekta i izbjegli gubitak podataka.