Tento článok vás podrobne rozpracuje, ako squashovať všetky potvrdenia v rámci jedného potvrdenia v git. Implementovali sme všetky kroky do distribúcie CentOS 8 Linux.
Squash sa zaväzuje do jedného s git
Git squashing môžete implementovať do nasledujúcich krokov:
Krok 1: Vyberte položku Spustiť potvrdenie
Nasledujúci príkaz, ktorý spustíte na termináli, zistíte, koľko potvrdení musíte squashovať:
$ git log
Teraz vyvoláte git na spustenie interaktívnej relácie rebase pomocou nasledujúceho príkazu:
$ git rebase -i HEAD ~ NVo vyššie uvedenej HEAD ~ N je „N“ celkový počet potvrdení, ktoré ste určili z príkazu „git log“. Predpokladajme, že počet potvrdení je 4. Teraz sa príkaz zmení na nasledujúci tvar:
$ git rebase -i HEAD ~ 4Nasledujúci zoznam potvrdení sa zobrazí na termináli, kde sa každý zaväzuje pozerať s výberom slova.
Krok 2: Zmeňte výber na Squash
Tu označíme všetky potvrdenia ako odstrániteľné a ponecháme prvé potvrdenie, ktoré bude použité ako východiskový bod. Zmeňte teda editor vim na režim vkladania stlačením „i“ a zmeňte výber všetkých potvrdení na squash okrem prvého potvrdenia. Teraz stlačením „Esc“ zmeňte režim vkladania a stlačením „: wq!“ Uložte všetky zmeny a ukončite ich. Ak potom používate jednoduchý textový editor, môžete jednoducho zmeniť slovo „vybrať“ na „squash“ a uložiť zmeny. Potom sa na termináli zobrazí nasledujúce okno:
Keď opustíte tento shell, v okne terminálu sa vám zobrazia nasledujúce správy:
Ak potom všetky zmačknete, uvidíte všetky potvrdenia spojené do jedného príkazu na potvrdenie, ktorý sa zobrazí na termináli:
Záver
Použitím git squash môžete ľahko stlačiť alebo skomprimovať mnoho potvrdení do menšieho jediného potvrdenia. Túto techniku môžete použiť na opravu pravopisných chýb dokumentácie. V tomto článku sme implementovali git squash. Tiež sme videli, ako môžeme vyčistiť históriu pomocou príkazov git rebase a squash.