En aquest article s’explica com esborrar totes les confirmacions en una sola confirmació en git. Hem implementat tots els passos de la distribució CentOS 8 Linux.
Squash es converteix en un amb git
Podeu implementar el git squashing en els passos següents:
Pas 1: trieu Start commit
Per determinar quantes confirmacions necessiteu aixafar, l'ordre següent s'executarà al terminal:
Registre de $ git
Ara, invocareu el git per iniciar una sessió de rebase interactiva mitjançant l'ordre següent:
$ git rebase -i HEAD ~ NA HEAD ~ N anterior, la 'N' és el nombre total de confirmacions que heu determinat a partir de l'ordre 'git log'. Suposem que el nombre de confirmacions és de 4. Ara, l'ordre canviarà a la forma següent:
$ git rebase -i HEAD ~ 4La següent llista de confirmacions es mostrarà al terminal on cada persona es compromet a mirar amb la paraula pick.
Pas 2: canvieu Pick a Squash
Aquí, marcarem totes les confirmacions com a esquaixables, deixarem la primera confirmació que s’utilitzarà com a punt de partida. Per tant, canvieu l’editor vim al mode d’inserció prement ‘i’ i canvieu el commit all pick a squash, excepte el primer commit. Ara, premeu 'Esc' per canviar el mode d'inserció i premeu ': wq!' Per desar tots els canvis i sortir. Si utilitzeu un editor de text senzill, podeu canviar la paraula 'escollir' a 'carbassa' i desar els canvis. Després d'això, veureu la finestra següent al terminal:
Quan deixeu aquest intèrpret d'ordres, veureu els missatges següents a la finestra del terminal:
Si premeu tot, veureu totes les confirmacions combinades en una única declaració de compromís que es mostrarà al terminal:
Conclusió
En utilitzar el git squash, podeu aixafar o comprimir fàcilment moltes confirmacions en una sola confirmació més petita. Podeu utilitzar aquesta tècnica per solucionar errors ortogràfics de documentació. Hem implementat git squash en aquest article. També hem vist com podem netejar l'historial mitjançant les ordres git rebase i squash.