Git

Ako vrátiť späť posledný záväzok v Gite

Ako vrátiť späť posledný záväzok v Gite
Bežným pracovným tokom v Gite je to, že vo svojom projekte urobíte zmeny, pridáte ich do pracovnej oblasti, zmeny potvrdíte, urobíte nové zmeny, zmeny vykonáte, potvrdíte zmeny, a ide to stále dokola. Čo však v prípade, že ste sa omylom dopustili svojich zmien? No neboj sa. Svoj posledný záväzok v Gite môžete kedykoľvek vrátiť späť. V tomto článku vám ukážem, ako vrátiť späť posledné odovzdanie v Gite. Takže poďme na to.

Nastavenie testovacieho úložiska Git:

V tejto časti sa chystám naklonovať jedno zo svojich úložísk GitHub na svojom počítači a vytvoriť testovacie úložisko pre tento článok. Ak chcete nasledovať, môžete tak urobiť tiež. Ak máte svoje vlastné úložisko Git, s ktorým môžete pracovať, tak super! Môžete to tiež použiť.

Ak chcete naklonovať jedno z mojich úložísk GitHub (https: // github.com / dev-shovon / my-project), spustite nasledujúci príkaz:

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

Repozitár GitHub by mal byť klonovaný do undo_commit_demo / adresár.

Teraz prejdite na ikonu undo_commit_demo / adresár takto:

Záväzok, ktorý chcete vrátiť, môže byť v inej vetve ako ja. Chcem vrátiť späť posledné spáchanie tj-opraviť pobočka. Takže musím vetvu potiahnuť tj-opraviť z môjho úložiska GitHub.

Môžete vytiahnuť tj-opraviť pobočka z GitHub nasledovne:

$ git pull origin ie-fix

POZNÁMKA: Tu, tj-opraviť je názov pobočky.

The tj-opraviť vetva by mala byť potiahnutá.

Teraz, pokladňa na pobočke (v mojom prípade, tj-opraviť) z ktorého chcete vrátiť posledný vykonaný príkaz nasledovne:

$ git checkout ie-fix

Ako vidíte, posledné spáchanie tj-opraviť pobočka je aec00f3. V ďalších častiach vám ukážem spôsoby, ako vrátiť späť posledné potvrdenie vo vašom úložisku Git.

Vrátiť späť posledné potvrdenie a ponechať zmeny:

Jedným zo spôsobov, ako vrátiť späť posledné potvrdenie, je mäkký reset použitia vo vašom úložisku Git. Čo to urobí, je to, že posledné potvrdenie sa odstráni a zmeny, ktoré ste v ňom vykonali, sa pridajú do pracovnej oblasti vášho úložiska Git. Týmto spôsobom, ak chcete niečo opraviť, môžete súbory upravovať a pridať nové potvrdenie.

Ako vidíte, posledný záväzok v mojom tj-opraviť pobočka je aec00f3.

$ git log - online

Moja pracovná oblasť je tiež čistá.

stav $ git

Ak chcete teraz odobrať alebo vrátiť späť posledné potvrdenie, spustite nasledujúci príkaz:

$ git reset --soft HEAD ~ 1

Ako vidíte, potvrdenie aec00f3 je preč.

$ git log - online

Aj súbor, ktorý som upravil pri poslednom potvrdení, je v mojej pracovnej oblasti.

stav $ git

Teraz môžete súbory ďalej upravovať, opraviť chyby, ktoré ste urobili, a vykonať zmeny znova.

Vrátiť späť posledné potvrdenie a odstrániť zmeny:

Ak je vám posledný záväzok, ktorý chcete odstrániť, k ničomu, môžete vo svojom úložisku Git zvážiť úplný reset. Tvrdý reset je taký, že odstráni posledný záväzok ako predtým. Ale tiež odstráni všetky zmeny, ktoré ste vykonali pri poslednom potvrdení. Tvrdý reset vykonajte, iba ak ste si istí, že už nepotrebujete nič z posledného potvrdenia.

Idem vytiahnuť tj-opraviť vetvu z môjho úložiska GitHub, aby som obnovil posledné potvrdenie aec00f3 a znova ju odstráňte v tejto časti.

$ git pull origin ie-fix

Ako vidíte, posledné odovzdanie je späť. Ak je vaše úložisko Git nahrané do cloudovej služby Git, napríklad GitHub, môžete tiež omylom obnoviť všetky odstránené potvrdenia.

Ako vidíte, moja pracovná oblasť je čistá.

stav $ git

Teraz, aby ste odstránili posledné potvrdenie a odstránili zmeny v tomto potvrdení, spustite nasledujúci príkaz:

$ git reset --hard HEAD ~ 1

Posledné potvrdenie by malo byť odstránené a HLAVA ukazovateľ by sa mal aktualizovať.

Ako vidíte, potvrdenie aec00f3 je odstránený a potvrdenie bezprostredne pred tým (3fffdee) je aktuálny posledný príkaz.

$ git log - online

Čistá je aj oddychová oblasť. Takže súbory zmien z odstráneného potvrdenia existujú.

stav $ git

Aktualizácia vzdialeného úložiska Git:

Teraz, keď ste úspešne odstránili chybné potvrdenie zo svojho úložiska Git, možno budete chcieť aktualizovať aj svoje úložisko GitHub. Toto je téma tejto časti.

Ako môžeš vidieť, stav git tiež ukazuje, že som 1 potvrdiť zo vzdialeného úložiska.

Predtým, ako som aktualizoval svoje úložisko GitHub, potvrdenie aec00f3 existuje, aj keď som ho odstránil z miestneho úložiska Git, ako vidíte.

Ak chcete synchronizovať lokálne úložisko Git s úložiskom GitHub, spustite nasledujúci príkaz:

$ git push --force origin ie-fix

Zmeny miestneho úložiska Git by sa mali synchronizovať s úložiskom GitHub.

Repozitár GitHub by sa mal aktualizovať. Ako vidíte, potvrdenie aec00f3 už nie je uvedený. K spáchaniu bezprostredne predtým aec00f3, ktorý je 3fffdee je teraz posledným spáchaním.

Takto teda vrátite posledný záväzok v Gite. Ďakujeme, že ste si prečítali tento článok.

S ovládaním pomocou myši X-Mouse môžete tlačidlá myši premapovať odlišne pre iný softvér
Možno budete potrebovať nástroj, ktorý by mohol zmeniť ovládanie myši pri každej aplikácii, ktorú používate. Ak je to váš prípad, môžete vyskúšať apli...
Recenzia bezdrôtovej myši Microsoft Sculpt Touch
Nedávno som čítal o Microsoft Sculpt Touch bezdrôtová myš a rozhodol sa ju kúpiť. Po chvíli používania som sa rozhodol s ním podeliť o svoje skúsenost...
Trackpad a ukazovateľ myši AppyMouse na obrazovke pre tablety so systémom Windows
Používateľom tabletov často chýba ukazovateľ myši, najmä keď notebooky bežne používajú. Dotykové smartphony a tablety majú veľa výhod a jediným obmedz...