Git

Kako poništiti posljednju predaju u Gitu

Kako poništiti posljednju predaju u Gitu
Uobičajeni tijek rada u Gitu je da vi mijenjate svoj projekt, dodajete promjene u scensko područje, urezujete promjene, unosite nove promjene, postavljate promjene, urezujete promjene i to ide dalje i dalje. Ali što ako ste pogreškom počinili svoje promjene? Pa, ne bojte se. Uvijek možete poništiti svoj posljednji predaj u Gitu. U ovom članku pokazat ću vam kako poništiti posljednje urezivanje u Gitu. Pa, krenimo.

Postavljanje testnog Git spremišta:

U ovom odjeljku klonirat ću jedno od svog GitHub spremišta na računalu kako bih postavio probno spremište za ovaj članak. Ako želite slijediti, možete i to učiniti. Ako imate svoje Git spremište za rad, onda sjajno! Možete ga i koristiti.

Za kloniranje jednog od mojih GitHub spremišta (https: // github.com / dev-shovon / my-project), pokrenite sljedeću naredbu:

$ git klon https: // github.com / dev-shovon / my-project undo_commit_demo

Spremište GitHub treba klonirati poništiti_komit_demo / imenik.

Sada idite na poništiti_komit_demo / direktorij kako slijedi:

Obveza koju želite poništiti može biti u drugoj grani poput moje. Želim poništiti posljednje urezivanje datoteke tj. popraviti podružnica. Dakle, moram povući granu tj. popraviti iz mog GitHub spremišta.

Možete povući tj. popraviti grana iz GitHub-a kako slijedi:

$ git pull origin tj. popravak

BILJEŠKA: Ovdje, tj. popraviti je naziv podružnice.

The tj. popraviti treba povući granu.

Sada, naplata do podružnice (u mom slučaju, tj. popraviti) iz kojeg želite poništiti posljednji urezivanje na sljedeći način:

$ git checkout ie-fix

Kao što vidite, posljednji urezivanje datoteke tj. popraviti grana je aec00f3. U sljedećim odjeljcima pokazat ću vam načine poništavanja posljednjeg urezivanja na vašem Git spremištu.

Poništi posljednje urezivanje i zadrži promjene:

Jedan od načina poništavanja posljednjeg urezivanja je soft soft reset na vašem Git spremištu. Ovo se događa, uklanja se posljednje urezivanje, a promjene koje ste napravili u tom urezivanju dodaju se u stupnjevanje vašeg Git spremišta. Na ovaj način, ako želite nešto popraviti, možete izmijeniti datoteke i dodati novi predaj.

Kao što vidite, posljednji predaj u mojem tj. popraviti grana je aec00f3.

$ git log --oneline

Također, moje scensko područje je čisto.

$ git status

Sada, da biste uklonili ili poništili posljednje urezivanje, pokrenite sljedeću naredbu:

$ git reset --soft GLAVA ~ 1

Kao što vidite, počinite aec00f3 je otišao.

$ git log --oneline

Također, datoteka koju sam modificirao u posljednjem urezivanju nalazi se u mojem pripremnom području.

$ git status

Sada možete dalje mijenjati datoteke, ispravljati pogreške i počiniti promjene.

Poništi posljednje urezivanje i ukloni promjene:

Ako vam je posljednja predaja koju želite ukloniti beskorisna, tada možete razmotriti hard reset na vašem Git repozitoriju. Ono što čini hard reset je uklanjanje posljednjeg urezivanja kao i prije. Ali, također uklanja sve promjene koje ste napravili u posljednjem urezivanju. Napravite hard reset samo kad ste sigurni da vam više nije potrebno ništa od zadnjeg urezivanja.

Ja ću povući tj. popraviti grana iz mog GitHub spremišta ponovno za oporavak zadnjeg urezivanja aec00f3 i ponovno ga uklonite u ovom odjeljku.

$ git pull origin tj. popravak

Kao što vidite, zadnji se urezivanje vratio. Ako je vaše Git spremište preneseno na uslugu Git u oblaku kao što je GitHub, tada možete vratiti i sve pogreške koje ste pogrešno uklonili.

Kao što vidite, moje je inscenacijsko područje čisto.

$ git status

Sada, za uklanjanje posljednjeg urezivanja i uklanjanje promjena u tom urezivanju, pokrenite sljedeću naredbu:

$ git reset --hard HEAD ~ 1

Treba ukloniti posljednje urezivanje i GLAVA pokazivač treba ažurirati.

Kao što vidite, počinite aec00f3 se uklanja i urezivanje neposredno prije toga (3fffdee) je trenutno posljednje urezivanje.

$ git log --oneline

Prostor za uprizorenje je također čist. Dakle, postoje datoteke promjena iz uklonjenog urezivanja.

$ git status

Ažuriranje udaljenog Git spremišta:

Sad kad ste uspješno uklonili neispravno urezivanje iz svog Git spremišta, možda ćete htjeti ažurirati i svoje GitHub spremište. Ovo je tema ovog odjeljka.

Kao što vidiš, git status također pokazuje da zaostajem za 1 udaljenim spremištem.

Prije nego što sam ažurirao svoje GitHub spremište, commit aec00f3 postoji iako sam ga uklonio iz lokalnog Git spremišta kao što vidite.

Da biste sinkronizirali lokalno Git spremište s GitHub spremištem, pokrenite sljedeću naredbu:

$ git push --force origin tj. fix

Promjene lokalnog Git spremišta trebaju se sinkronizirati s GitHub spremištem.

Spremište GitHub treba ažurirati. Kao što vidite, počinite aec00f3 više nije na popisu. Završi neposredno prije aec00f3, koji je 3fffdee je sada posljednja predaja.

Dakle, na taj način poništavate posljednji urezivanje u Gitu. Hvala što ste pročitali ovaj članak.

Luke komercijalnih igara s otvorenim kodom
Besplatne igre s otvorenim kodom i više platformi mogu se koristiti za igranje starih, kao i nekih prilično nedavnih naslova igara. U ovom će se člank...
Najbolje igre naredbenog retka za Linux
Naredbeni redak nije samo vaš najveći saveznik pri korištenju Linuxa - on također može biti izvor zabave jer ga možete koristiti za igranje mnogih zab...
Najbolje aplikacije za mapiranje gamepada za Linux
Ako volite igrati igre na Linuxu s gamepadom umjesto tipičnim sustavom za unos tipkovnice i miša, za vas postoji nekoliko korisnih aplikacija. Mnoge r...