Hoe plet je alle verplichtingen in één?

How Do You Squash All Commits One



In Git is Squash een techniek waarmee je een reeks wijzigingen kunt aanbrengen in commits en deze vervolgens kunt consolideren in één commit. Laten we het uitleggen aan de hand van een voorbeeld, stel dat je n aantal commits hebt en als je git squashing erop toepast, kun je alle 'n' commits squashen of comprimeren tot een enkele commit. Git squash wordt gebruikt om verschillende grote commits te veranderen in een kleine enkele zinvolle commit. Je kunt het git-logboek dus duidelijker maken. Je kunt ook branches samenvoegen met behulp van de squashtechniek. Het is een best practice om commits altijd te squashen en te rebasen met de master- of parent-branch.

Dit artikel zal je uitleggen hoe je alle commits in een enkele commit in git kunt Squashen. We hebben alle stappen op de CentOS 8 Linux-distributie geïmplementeerd.







Squash verbindt zich tot één met git

Je kunt de git squashing in de volgende stappen implementeren:



Stap 1: Kies Start commit

Om te bepalen hoeveel commits je moet squashen, voer je het volgende commando uit op de terminal:



$ git log





Nu zul je de git aanroepen om een ​​interactieve rebase-sessie te starten door het volgende commando te gebruiken:

$ git rebase -i HEAD~N

In de bovenstaande HEAD~N is de 'N' het totale aantal commits dat je hebt bepaald met het 'git log' commando. Laten we aannemen dat het aantal commits 4 is. Nu zal het commando in de volgende vorm veranderen:

$ git rebase -i HEAD~4

De volgende lijst met commits wordt weergegeven op de terminal waar elke commit begint met het woord kiezen.

Stap 2: Verander Pick in Squash

Hier zullen we alle commits als squashable markeren, de eerste commit die als startpunt zal worden gebruikt, laten we over. Dus verander de vim-editor in de invoegmodus door op 'i' te drukken en verander de all pick-commit in de squash behalve de eerste commit. Druk nu op 'Esc' om de invoegmodus te wijzigen en druk op ':wq!' om alle wijzigingen op te slaan en af ​​te sluiten. Als u de eenvoudige teksteditor gebruikt, kunt u eenvoudig het 'kies'-woord in 'squash' veranderen en de wijzigingen opslaan. Daarna ziet u het volgende venster op de terminal:

Wanneer u deze shell verlaat, ziet u de volgende berichten in het terminalvenster:

Als je dan alles verplettert, zie je alle commits gecombineerd in een enkele commit-instructie die op de terminal wordt weergegeven:

Conclusie

Door de git squash te gebruiken, kun je gemakkelijk veel commits squashen of comprimeren in een kleinere enkele commit. U kunt deze techniek gebruiken om spelfouten in de documentatie te herstellen. We hebben git squash in dit artikel geïmplementeerd. We hebben ook gezien hoe we de geschiedenis kunnen opschonen met de commando's git rebase en squash.