Git Hub je populární hostingová platforma git repozitářů. Umožňuje vývojářům spolupracovat na projektech, sledovat změny a spravovat verze kódu. V průběhu vývoje je někdy nutné odstranit commit nebo opravit jeho chyby. V tomto článku vám řekneme, jak odstranit commit v GIT Hub.
Než začnete s odstraněním commitu, je důležité si uvědomit, že jde o proces, který mění historii vývoje. Proto byste měli být pozorní a opatrní, zvláště pokud pracujete v týmu. Je také důležité uložit zálohu před odstraněním commitu, abyste se mohli vrátit do předchozího stavu, pokud se něco pokazí.
Odstranění příkazu git revert nebo GIT reset lze provést pomocí příkazu git revert. Příkaz git revert vytvoří nový commit, který zruší změny provedené vybraným commitem. Historie tedy zůstává stejná, ale chyby v komuniké se opravují. Tým git reset naproti tomu zcela odstraní vybraný commit z historie, což vede ke změně historie vývoje.
Odstranění commitu v GIT Hub: proč je to nutné
Odstranění obchodu v GIT Hub může být užitečné v mnoha případech. Zde je několik důvodů, proč byste mohli chtít odstranit commit:
- Chyby v komuniké: Pokud jste našli chybu po commitu, můžete ji odstranit a opravit chybu před novou commitou. V historii komit tedy zůstane pouze opravená verze.
- Citlivé informace: Pokud komuniké obsahuje citlivé informace, jako jsou hesla nebo přístupové klíče, budete chtít tento commit odstranit, abyste tyto informace nezanechali v historii commitů.
- Projektový Chaos: Pokud jste se pustili do nového projektu a prvních několik komit se ukázalo jako zbytečných nebo nesouvisejících s hlavním projektem, odstranění těchto komit pomůže učinit historii komit srozumitelnější a logičtější.
Je důležité vědět, že smazání komit v GIT Hub může ovlivnit historii komit a práci ostatních vývojářů, zvláště pokud již byly commity publikovány v obecném úložišti. Proto byste měli být opatrní při mazání zpráv a nezapomeňte vysvětlit důvody smazání v komentářích ke komunitám.
Kroky k odstranění commitu v GIT Hub
Krok 1: Otevřete úložiště v GIT Hub, které ukládá komit, který chcete odstranit.
Krok 2: Najděte ID obchodu, který chcete odstranit. Můžete jej najít v historii komit nebo na příkazovém řádku pomocí příkazu git log.
Krok 3: Zkopírujte ID commitu.
Krok 4: Zadejte příkaz git rebase - I HEAD~ v příkazovém řádku, kde počet komit - to je počet komit, které chcete odstranit.
Krok 5: V textovém editoru, který se otevře po spuštění příkazu, vyhledejte řádek s identifikátorem commitu, který chcete odstranit.
Krok 6: Odstraňte tento řádek a uložte soubor.
Krok 7: V příkazovém řádku spusťte příkaz git push –force Chcete-li použít změny odstranění commitu.
Po provedení těchto kroků bude commit odstraněn z úložiště v GIT Hub. Buďte opatrní, protože tyto akce jsou nevratné a vzdálený commit nebude možné obnovit.
Příprava na odstranění commitu v GIT Hub
Než odstraníte commit v GIT Hub, je třeba provést několik kroků k přípravě:
1. Zkontrolujte aktuální stav úložiště:
Ujistěte se, že váš počítač nemá dokončené změny, které chcete uložit. Proveďte příkaz git status na příkazovém řádku Zkontrolujte aktuální stav úložiště.
2. Vytvořte zálohu:
Zálohujte své úložiště předem. V případě chyby budete moci obnovit úložiště ze zálohy.
3. Zaznamenejte změny:
Zajistěte, aby byly všechny vaše změny zakomponovány. Pokud existují nějaké nefixované změny, proveďte příkaz git add a git commit aby byly zaznamenány všechny změny.
4. Podívejte se na historii obchodů:
Podívejte se na historii komit a najděte hash commitu, který chcete odstranit. Proveďte příkaz git log v příkazovém řádku pro zobrazení historie komit.
Po dokončení těchto předběžných kroků budete připraveni na smazání obchodu v GIT Hub.
Jak zrušit commit v GIT Hub
Někdy je při práci s Git Hub potřeba zrušit commit a vrátit se k předchozímu stavu projektu. V této části se budu zabývat dvěma způsoby, jak zrušit commit v GIT Hub.
1. Pomocí příkazu git revert
Kroky ke zrušení příkazu git revert:
- Otevřete Git Bash ve složce se svým projektem.
- Zadejte příkaz git log a zjistěte hash zprávy, kterou chcete zrušit. Zkopírujte ho.
- Vraťte se do Git Bash a zadejte příkaz git revert hash_commitu , kde místo hash_commitu vložte zkopírovaný hash commite.
- Změňte popis zrušeného obchodu v editoru Git, uložte soubor a zavřete Editor.
- Spusťte příkaz git push pro odesílání změn na vzdálený server.
Po provedení těchto kroků bude výbor zrušen a změny budou aplikovány na projekt.
2. Pomocí příkazu git reset
Kroky ke zrušení příkazu git reset:
- Otevřete Git Bash ve složce se svým projektem.
- Zadejte příkaz git log a zjistěte hash zprávy, kterou chcete zrušit. Zkopírujte ho.
- Vraťte se do Git Bash a zadejte příkaz git reset --hard hash_commit , kde místo hash_commitu vložte zkopírovaný hash commite.
- Spusťte příkaz git push-f pro odesílání změn na vzdálený server. Upozorňujeme, že tento příkaz může být nebezpečný, protože násilně nahrazuje historii transakcí na vzdáleném serveru.
Po provedení těchto kroků bude výbor zrušen a změny budou aplikovány na projekt.
Nyní znáte dva způsoby, jak zrušit commit v GIT Hub. Vyberte si vhodný způsob podle svých potřeb a preferencí.
Vymazání zprávy z historie Git Hub
Historie commitů v GIT Hub může být někdy příliš nepřehledná. Možná jste omylem udělali commit se špatnou zprávou nebo jste přidali nepotřebné soubory. V takových případech můžete odstranit commit z historie Git Hub a vrátit se k předchozímu stavu projektu.
Chcete-li odstranit commit z historie Git Hub, budete muset použít příkaz git push s možností --force . Je však důležité si uvědomit, že odstranění commitu z historie git Hub je nežádoucí operací a může poškodit integritu úložiště. Proto se doporučuje před odstraněním commitu zálohovat projekt.
Zde je krok za krokem návod, jak odstranit commit z historie git Hub:
- Otevřete příkazový řádek nebo terminál a přejděte do místního adresáře vašeho projektu.
- Spusťte příkaz git log a získejte seznam všech komit v úložišti. Zkopírujte hash kód komuniké, který chcete odstranit.
- Spusťte příkaz git rebase - I HEAD~N, kde N je počet komit, které chcete změnit. Otevře se editor zpráv.
- Najděte řádek s obchodem, který chcete odstranit, a změňte Klíčové slovo vedle něj na drop . Uložte změny.
- Spusťte příkaz git push -- force a aplikujte změny na vzdálené úložiště. To může vyžadovat zadání vašeho přihlašovacího jména a hesla.
Po provedení těchto kroků bude vybraný commit odstraněn z historie Git Hub. Všimněte si však, že ostatní uživatelé úložiště mohou mít Forky nebo již naklonovat vaše úložiště, takže odstranění commitu z historie git Hub může vést ke komplikacím. Proto se doporučuje před odstraněním komuniké kontaktovat ostatní účastníky projektu a upozornit je na změny.