Kako resetirati svoj GIT repozitorij

Posted on:December 23, 2023 at 09:42

Ako iz nekog razloga želite obrisati sve dosadašnje commitove u svojem GIT repozitoriju, ovo je “tutorial” za vas. Ovo će stvoriti početnu točku u vašem Git repozitoriju, čuvajući trenutno stanje vašeg projekta (datoteke i sadržaj), ali odbacujući svu prethodnu povijest commita.

Postupak

  1. Stvorite novu neovisnu granu::

    git checkout --orphan new_old

    Ova naredba stvara novu granu nazvanu new_old koja nije bazirana na nijednoj postojećoj grani, učinkovito nemajući nikakvu povijest commita. Nakon pokretanja ove naredbe, bit ćete na grani new_old.

  2. Pripremite sve promjene::

    git add -A

    Ova naredba priprema sve promjene u vašem projektu (nove, modificirane i obrisane datoteke). Priprema sve trenutne datoteke vašeg projekta da budu commitane kao novi početni commit na grani new_old.

  3. Commitajte promjene:

    git commit -m "Initial commit"

    Ovo stvara novi commit na grani new_old s porukom “Initial commit”. Ovaj commit će djelovati kao nova početna točka za povijest vašeg projekta.

  4. Vratite se natrag na glavnu granu:

    git checkout main

    Vraća vaš radni direktorij natrag na granu main. Grana main još uvijek sadrži staru povijest commita u ovoj točki.

  5. Zamijenite povijest glavne grane:

    git reset --hard new_old

    Ova naredba resetira granu main da se podudara sa stanjem grane new_old. Sva povijest commita u main zamijenjena je jednim commitom iz new_old.

  6. Obrišite privremenu neovisnu granu:

    git branch -D new_old

    Briše granu new_old jer više nije potrebna. Grana main sada sadrži trenutno stanje vašeg projekta s čistom poviješću.

  7. Prisilno ažuriranje na udaljeni repozitorij:

    git push origin main --force

    Prisilno ažurira granu main na udaljenom repozitoriju. Upozorenje: Ovaj korak prepiše povijest na udaljenom. To je potencijalno destruktivna operacija i može utjecati na suradnike.

Važne Napomene