Git

Jak vrátit poslední potvrzení v Git

Jak vrátit poslední potvrzení v Git
Běžný pracovní postup v Gitu spočívá v tom, že ve svém projektu provedete změny, přidáte změny do pracovní oblasti, potvrdíte změny, provedete nové změny, provedete změny, potvrdíte změny a bude to pokračovat dál a dál. Ale co když jste omylem provedli své změny? Neboj se. Svůj poslední odevzdání můžete kdykoli vrátit zpět v Gitu. V tomto článku vám ukážu, jak vrátit poslední potvrzení v Gitu. Pojďme tedy začít.

Nastavení testovacího úložiště Git:

V této části se chystám naklonovat jedno ze svých úložišť GitHub na svém počítači a nastavit testovací úložiště pro tento článek. Pokud budete chtít pokračovat, můžete tak učinit také. Pokud máte vlastní úložiště Git, se kterým můžete pracovat, pak skvělé! Můžete jej také použít.

Klonování jednoho z mých úložišť GitHub (https: // github.com / dev-shovon / my-project), spusťte následující příkaz:

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

Repozitář GitHub by měl být klonován undo_commit_demo / adresář.

Nyní přejděte na undo_commit_demo / adresář takto:

Potvrzení, které chcete vrátit zpět, může být v jiné větvi jako moje. Chci vrátit poslední spáchání ie-fix větev. Takže musím zatáhnout větev ie-fix z mého úložiště GitHub.

Můžete vytáhnout ie-fix větev z GitHub takto:

$ git pull origin ie-fix

POZNÁMKA: Tady, ie-fix je název pobočky.

The ie-fix větev by měla být zatažena.

Nyní, pokladna na pobočce (v mém případě, ie-fix) ze kterého chcete vrátit poslední potvrzení takto:

$ git checkout ie-fix

Jak vidíte, poslední odevzdání ie-fix pobočka je aec00f3. V následujících částech vám ukážu způsoby, jak zrušit poslední potvrzení ve vašem úložišti Git.

Vrátit zpět poslední potvrzení a ponechat změny:

Jedním ze způsobů, jak vrátit poslední potvrzení, je použít soft reset ve vašem úložišti Git. Co to je, je poslední potvrzení odebráno a změny, které jste v tomto potvrzení provedli, jsou přidány do pracovní oblasti vašeho úložiště Git. Tímto způsobem, pokud chcete cokoli opravit, můžete upravit soubory a přidat nové potvrzení.

Jak vidíte, poslední potvrzení v mém ie-fix pobočka je aec00f3.

$ git log - online

Moje pracovní oblast je také čistá.

stav $ git

Nyní, chcete-li odebrat nebo vrátit zpět poslední potvrzení, spusťte následující příkaz:

$ git reset --soft HEAD ~ 1

Jak vidíte, potvrzení aec00f3 je pryč.

$ git log - online

Také soubor, který jsem upravil při posledním odevzdání, je v mé pracovní oblasti.

stav $ git

Nyní můžete soubory dále upravovat, opravit chyby, které jste udělali, a provést změny znovu.

Vrátit zpět poslední potvrzení a odebrat změny:

Pokud je pro vás poslední potvrzení, které chcete odebrat, zbytečné, můžete ve svém úložišti Git zvážit tvrdý reset. Co tvrdý reset dělá, je, že odstraní poslední potvrzení jako dříve. Ale také odstraní všechny změny, které jste provedli při posledním potvrzení. Proveďte tvrdý reset, pouze pokud jste si jisti, že již nepotřebujete nic z posledního potvrzení.

Chystám se vytáhnout ie-fix větev z mého úložiště GitHub znovu obnovit poslední potvrzení aec00f3 a v této části jej znovu odeberte.

$ git pull origin ie-fix

Jak vidíte, poslední odevzdání je zpět. Pokud je vaše úložiště Git nahráno do cloudové služby Git, jako je GitHub, můžete také obnovit jakékoli potvrzení, které omylem odeberete.

Jak vidíte, moje pracovní oblast je čistá.

stav $ git

Nyní, chcete-li odebrat poslední potvrzení a odebrat změny v tomto potvrzení, spusťte následující příkaz:

$ git reset --hard HEAD ~ 1

Poslední potvrzení by mělo být odstraněno a HLAVA ukazatel by měl být aktualizován.

Jak vidíte, potvrzení aec00f3 je odstraněn a potvrzení bezprostředně před tím (3fffdee) je aktuální poslední potvrzení.

$ git log - online

Pracovní plocha je také čistá. Existují tedy soubory změn z odebraného potvrzení.

stav $ git

Aktualizace vzdáleného úložiště Git:

Nyní, když jste úspěšně odstranili chybné potvrzení ze svého úložiště Git, možná budete chtít také aktualizovat své úložiště GitHub. Toto je téma této části.

Jak můžete vidět, stav git také ukazuje, že jsem 1 zavázat se ze vzdáleného úložiště.

Než jsem aktualizoval své úložiště GitHub, potvrzení aec00f3 existuje, i když jsem ji odstranil z místního úložiště Git, jak vidíte.

Chcete-li synchronizovat místní úložiště Git s úložištěm GitHub, spusťte následující příkaz:

$ git push --force origin ie-fix

Změny místního úložiště Git by měly být synchronizovány s úložištěm GitHub.

Úložiště GitHub by mělo být aktualizováno. Jak vidíte, potvrzení aec00f3 již není uveden. Potvrzení bezprostředně před aec00f3, který je 3fffdee je nyní poslední potvrzení.

Takto tedy vrátíte poslední revizi v Gitu. Děkujeme za přečtení tohoto článku.

Přidejte gesta myši do Windows 10 pomocí těchto bezplatných nástrojů
V posledních letech se počítače a operační systémy značně vyvinuly. Bývaly doby, kdy uživatelé museli procházet správci souborů pomocí příkazů. Stejně...
Ovládejte a spravujte pohyb myši mezi více monitory ve Windows 10
Správce myší se dvěma displeji umožňuje ovládat a konfigurovat pohyb myši mezi více monitory zpomalením jeho pohybů poblíž hranice. Windows 10/8 vám u...
WinMouse vám umožňuje přizpůsobit a vylepšit pohyb ukazatele myši na PC s Windows
Chcete-li vylepšit výchozí funkce ukazatele myši, použijte freeware WinMouse. Přidává další funkce, které vám pomohou vytěžit ze své skromné ​​myši ma...