Denne artikkelen vil utdype deg hvordan du squash alle forpliktelser i en enkelt forpliktelse i git. Vi har implementert alle trinnene på CentOS 8 Linux-distribusjon.
Squash Forplikter seg til en med git
Du kan implementere git squashing i følgende trinn:
Trinn 1: Velg Start commit
For å bestemme hvor mange forpliktelser du trenger for å squash, kjører du følgende kommando på terminalen:
$ git-logg
Nå vil du påkalle git for å starte en interaktiv rebase-økt ved å bruke følgende kommando:
$ git rebase -i HEAD ~ NI ovennevnte HEAD ~ N er 'N' det totale antallet forpliktelser du har bestemt fra kommandoen 'git log'. La oss anta at antall forpliktelser er 4. Nå vil kommandoen endres til følgende form:
$ git rebase -i HEAD ~ 4Følgende forpliktelsesliste vises på terminalen der hver forplikter seg og stirrer på ordplukket.
Trinn 2: Bytt Pick til Squash
Her vil vi merke alle forpliktelser som squashable, la den første forpliktelsen som skal brukes som utgangspunkt. Så endre vim-redigereren til innsettingsmodus ved å trykke 'i' og endre all pick-forpliktelsen i squashen bortsett fra den første forpliktelsen. Trykk nå på 'Esc' for å endre innsettingsmodus og trykk på ': wq!'for å lagre alle endringer og avslutte. Hvis du bruker den enkle teksteditoren, kan du bare endre 'plukke' ordet til 'squash' og lagre endringene. Etter det vil du se følgende vindu på terminalen:
Når du forlater dette skallet, vil du se følgende meldinger i terminalvinduet:
Hvis du klemmer hele tiden, vil du se alle forpliktelser kombinert i en enkelt forpliktelseserklæring som vises på terminalen:
Konklusjon
Ved å bruke git squash, kan du enkelt squash eller komprimere mange forpliktelser til en mindre enkelt forpliktelse. Du kan bruke denne teknikken til å fikse stavefeil i dokumentasjonen. Vi har implementert git squash i denne artikkelen. Vi har også sett hvordan vi kan gjøre historien ren ved hjelp av git rebase- og squash-kommandoene.