Úvod
Git je populární aplikace pro sledování projektů. Jak projekt postupuje různými revizemi, jsou tyto revize publikovány jako závazek . Potvrzení představuje kontrolní bod, kde je kopie projektu uložena v určitém bodě.
Tento průvodce vám ukáže, jak vrátit zpět poslední potvrzení v git.

Předpoklady
- Stávající projekt v Gitu
- Přístup k oknu terminálu/příkazovému řádku
Jak vrátit zpět závazek
Git nabízí mnoho funkcí pro správu vašeho projektu z různých historických závazků. Předchozí potvrzení, publikované nebo nepublikované, můžete zobrazit a vrátit zpět.
Čtěte dále a zjistěte, jak identifikovat a vrátit zpět publikované potvrzení. Pokud se chcete o Gitu dozvědět více, podívejte se také na náš článek o tom, jak Git funguje.
Identifikace závazku
Hash je alfanumerický kód, který identifikuje každé potvrzení. Chcete-li zobrazit hash odevzdání, zadejte následující příkaz:
git log
Hash je nezbytný pro zobrazení nebo správu konkrétního odevzdání.

Chcete-li analyzovat stav vašeho projektu z předchozího odevzdání, použijte příkaz checkout:
git checkout [hash]
Když použijete hash s příkazem Git, není nutné jej zadávat celý. Prvních několik jedinečných znaků stačí k tomu, aby Git správně identifikoval záznam.
Git Revert:Vrácení posledního Git Commit
Jakmile je potvrzení nahráno na server, vytvoří se trvalejší protokol projektu. Není vhodné používat reset v tomto případě je možné, že jiní vývojáři již aktualizovaný projekt získali.
Odstranění aktualizací z jednoho systému může způsobit konflikty s ostatními členy týmu. Místo toho použijte revert příkaz:
git revert [hash]
Ujistěte se, že jste zadali kód pro hash, ke kterému se chcete vrátit. Systém vás požádá o zadání konkrétní zprávy odevzdání pro změny, které se vrátit příkaz se provede.

Tato akce vytvoří nové potvrzení založené na tom, které jste zadali, s revert
štítek. Funguje jako protokol, který ukazuje, že odevzdání bylo publikováno a poté vráceno (místo předstírání, že se to nikdy nestalo).
Git Reset:Vrátit zpět nepublikované závazky
Nepublikovaný závazek je aktualizace přijatá v Gitu, která však nebyla nahrána na server. Chcete-li obnovit předchozí potvrzení, před provedením jakýchkoli změn:
git reset --hard [hash]
Tento příkaz vymaže slate zpět do předchozího odevzdání. Veškeré změny, které jste provedli, budou po použití reset --hard
ztraceny příkaz.
Pokud si chcete uchovat své dílo, můžete použít stash
příkaz:
git stash
git reset --hard [hash]
git stash pop
stash
příkaz uloží práci, kterou jste udělali, a stash pop
načte tyto změny po resetu. Alternativně můžete použít následující:
git reset --soft [hash]
Tento příkaz resetuje historii odevzdání, ale ponechá váš pracovní adresář a pracovní index tak, jak jsou.
Git Amend:Úprava posledního závazku
Chcete-li upravit nejnovější potvrzení, použijte git commit --amend
příkaz. Tento příkaz nahradí poslední potvrzení upraveným potvrzením, aniž by se změnil snímek.
--amend
flag se obvykle používá k opravě drobných chyb.
Například chcete odevzdat několik souborů v jednom snímku, ale před odevzdáním zapomenete přidat jeden ze souborů. Tento problém lze snadno vyřešit pomocí --amend
možnost.
Nejprve přidáte chybějící soubor pomocí:
git add file2.py
Poté spusťte příkaz:
git commit --amend --no-edit
--no-edit
volba upraví odevzdání bez změny zprávy odevzdání.