Denne artikel vil uddybe dig, hvordan du squash alle forpligtelser i en enkelt forpligtelse i git. Vi har implementeret alle trin på CentOS 8 Linux-distributionen.
Squash forpligter sig til en med git
Du kan implementere git squashing i følgende trin:
Trin 1: Vælg Start-forpligtelse
For at bestemme, hvor mange forpligtelser du skal squash, kører du følgende kommando på terminalen:
$ git log
Nu påkalder du git for at starte en interaktiv rebasesession ved hjælp af følgende kommando:
$ git rebase -i HEAD ~ NI ovenstående HEAD ~ N er 'N' det samlede antal forpligtelser, du har bestemt fra kommandoen 'git log'. Lad os antage, at antallet af forpligtelser er 4. Nu ændres kommandoen til følgende form:
$ git rebase -i HEAD ~ 4Følgende liste over forpligtelser vises på terminalen, hvor hver forpligter sig til at stirre på ordvalget.
Trin 2: Skift Pick til Squash
Her markerer vi alle forpligtelser som sammenklappelige, efterlader den første forpligtelse, der vil blive brugt som udgangspunkt. Så skift vim-editoren til insert-tilstand ved at trykke på 'i' og skift all pick-commit i squash undtagen den første commit. Nu skal du trykke på 'Esc' for at ændre indsættelsestilstanden og trykke på ': wq!'for at gemme alle ændringer og afslutte. Hvis du bruger den enkle teksteditor, kan du blot ændre 'pick' ordet til 'squash' og gemme ændringer. Derefter vil du se følgende vindue på terminalen:
Når du forlader denne shell, vil du se følgende meddelelser i terminalvinduet:
Hvis du klemmer det hele, vil du se alle forpligtelser kombineret til en enkelt forpligtelseserklæring, der vises på terminalen:
Konklusion
Ved at bruge git squash kan du nemt squash eller komprimere mange forpligtelser til en mindre enkelt commit. Du kan bruge denne teknik til at rette stavefejl ved dokumentation. Vi har implementeret git squash i denne artikel. Vi har også set, hvordan vi kan gøre historien ren ved hjælp af kommandoerne git rebase og squash.