Tento článek vám vysvětlí, jak Squashovat všechny revize v jediném revizi v git. Implementovali jsme všechny kroky na distribuci CentOS 8 Linux.
Squash Commit do jednoho s git
Git squashing můžete implementovat do následujících kroků:
Krok 1: Vyberte Spustit potvrzení
Chcete-li zjistit, kolik revizí potřebujete k squashu, na terminálu spustíte následující příkaz:
$ git log
Nyní vyvoláte git a zahájíte interaktivní relaci rebase pomocí následujícího příkazu:
$ git rebase -i HEAD ~ NVe výše uvedeném HEAD ~ N je „N“ celkový počet závazků, které jste určili pomocí příkazu „git log“. Předpokládejme, že počet závazků je 4. Nyní se příkaz změní do následující podoby:
$ git rebase -i HLAVA ~ 4Následující seznam závazků se zobrazí na terminálu, kde se každý z nich zaváže a zírá s výběrem slova.
Krok 2: Změňte Pick na Squash
Zde označíme všechny revize jako squashovatelné, ponecháme první revizi, která bude použita jako výchozí bod. Takže změňte editor vim do režimu vkládání stisknutím klávesy 'i' a změňte all pick commit na squash kromě prvního commit. Nyní stisknutím klávesy „Esc“ změňte režim vkládání a stiskněte „: wq!'pro uložení všech změn a ukončení. Pokud používáte jednoduchý textový editor, můžete jednoduše změnit slovo „vybrat“ na slovo „squash“ a uložit změny. Poté se na terminálu zobrazí následující okno:
Když opustíte tento shell, uvidíte v okně terminálu následující zprávy:
Pokud pak vše rozmačkáte, uvidíte všechny revize kombinované do jednoho příkazu revize, který se zobrazí na terminálu:
Závěr
Pomocí git squashu můžete snadno zmáčknout nebo komprimovat mnoho revizí do menšího jediného revize. Tuto techniku můžete použít k opravě pravopisných chyb dokumentace. V tomto článku jsme implementovali git squash. Také jsme viděli, jak můžeme vyčistit historii pomocí příkazů git rebase a squash.