Git is een populaire, krachtige tool en mogelijk het meest succesvolle versiebeheersysteem dat er ooit is geweest. De kracht van Git blijkt uit zijn commandoset. Het bestaat momenteel uit ongeveer 150 commando's, van de gemeenschappelijke git-status naar het obscure git-get-tar-commit-id. Met elke opdracht die zijn eigen reeks opties ondersteunt, is er een duizelingwekkende hoeveelheid om te onthouden.
Gelukkig heeft Git een manier om dingen te vereenvoudigen. Een Git-alias kan fungeren als een snelkoppeling voor elk subcommando, met elke set opties. Met externe opdrachten kunt u nog krachtigere aanroepingen gebruiken. Hier zijn 10 van de handigste aliassen die u kunt instellen.
Een alias instellen
Het instellen van een alias is net zo eenvoudig als het volgen van dit patroon:
git config --global alias.co 'afrekenen'
De --globaal optie stelt de alias in voor al het Git-gebruik door de huidige gebruiker. Om een alias toe te passen op alle gebruikers van het systeem, gebruik, --systeem
in plaats daarvan. Om een alias toe te voegen die specifiek is voor de huidige repository, gebruik --lokaal.Als u weet waar een configuratiebestand zich bevindt, kunt u het direct bewerken. De systeemconfiguratie bevindt zich meestal op een globale locatie: /usr/local/etc/gitconfig. Uw gebruikersspecifieke configuratie zal in een bestand in uw thuismap staan, zoals: ~/.gitconfig. Lokale configuratie bestaat binnen elke repository zelf, in de .git/config het dossier.
Zie ook: Git installeren en configureren op Linux
1. Een alias om snel van tak te wisselen
Afhankelijk van uw workflow, kunt u tijdens elke werksessie vaak van vestiging wisselen. Probeer het volgende om een kleine hoeveelheid inspanning te verlichten en te oefenen met de eenvoudigste soort alias:
alias.co 'afrekenen'
Typen git co feature1 schakelt nu over naar de kenmerk1 tak. De alias verkort de naam van de subopdracht, die blijft werken met extra argumenten.
2. Verkorte status bekijken
Standaard is de git-status commando produceert uitgebreide uitvoer. Het legt de staat in detail uit, met nuttige informatie voor iedereen die niet bekend is met Git. Als je echter wat ruimte wilt besparen en je al bekend bent met Git-terminologie, wil je misschien een alias instellen voor een kortere versie:
alias.st status -sb
Dit is slechts een heel kleine variatie op git-status, maar de -s optie produceert een korte uitvoer waardoor de zaken een stuk korter worden. Het heeft zoiets als deze standaard git-status nodig:
En produceer dit in plaats daarvan:
De -B optie toont filiaal- en trackinginformatie die: -s anders zou onderdrukken.
3. Overzichtsregistratie weergeven
Git biedt vele manieren om de geschiedenis van een project inzien via de git-log opdracht. Het kan de commits die het rapporteert filteren en kan veel verschillende gegevens weergeven die bij elke commit horen. Soms wilt u echter een zo compact mogelijk logboek. De --een lijn optie biedt dit, maar het is een stuk sneller om het een alias te geven, aangezien het er een is die je vrij vaak kunt gebruiken:
alias.ll 'log --oneline'
De uitvoer presenteert één commit per regel, met de titel van het commit-bericht en een verkorte hash. Het ziet er zo uit:
4. De laatste wijziging ongedaan maken
De git reset commando is waardevol, maar het is niet het gemakkelijkst te begrijpen. Soms wil je gewoon een simpele ongedaan maken die de laatste commit terugdraait. De --zacht optie zorgt ervoor dat Git alleen de laatste commit verwijdert, zonder iets te veranderen aan de lokale bestanden in je werkboom. HOOFD~1 is gewoon een manier om te verwijzen naar de commit voor de HEAD.
alias.undo 'reset --soft HEAD~1'
5. Logboek van de laatste verbintenis
Als je een project van de dag ervoor oppikt, kan het handig zijn om de laatste commit te bekijken. Met een git-log alias kun je een snel, gedetailleerd rapport krijgen van de laatste commit:
alias.last 'log -1 HEAD --stat'
De -1 HOOFD optie vraagt gewoon de allerlaatste commit en --stat geeft een overzicht van de bestanden die door de commit zijn beïnvloed, met het aantal regels dat voor elk is ingevoegd en verwijderd.
6. Een eenvoudige eenmalig engagement
Je merkt waarschijnlijk dat je vrij vaak bestanden toevoegt en ze in de volgende stap vastlegt. Tenzij uw workflow ingewikkelder is, wilt u dit proces misschien vereenvoudigen met een alias:
alias.ac '!git add -A && git commit'
De afzonderlijke componenten behoeven niet veel uitleg, behalve dat de -EEN optie doorgegeven aan git-add zal de index automatisch bijwerken zodat alle bestanden overeenkomen met de werkkopie. Het is geschikt voor het verwijderen, wijzigen en maken van bestanden.
Een interessant ding om op te merken over deze alias is dat het twee commando's combineert. Het doet dit met behulp van de ! symbool als het eerste teken van de alias. Dit informeert Git dat wat volgt een extern shell-commando is in plaats van een subcommando.
7. Fancy Branch-opmaak
Een ander commando met veel flexibiliteit, git-branch kan zijn uitvoer op vele manieren formatteren die verder gaan dan de schaarse standaard.
alias.br "branch --format='%(HEAD) %(color: yellow)%(refname: short)%(color: reset) - %(contents: subject) %(color: green)(%(committerdate: relatief)) [%(auteursnaam)]' --sort=-committerdate"
Bekijk het formaat van begin tot eind. Merk op dat het veel speciale velden bevat. %(HOOFD) voegt een asterisk toe naast de huidige tak.
Aliassen zijn een geweldige manier om te experimenteren met opmaak voor opdrachten zoals git-branch. U zult in de loop van de tijd voorkeuren ontwikkelen, dus het is een must om bij te houden welke opties uw favoriete uitvoer produceren.
8. Wijzigingen per bijdrager samenvatten
Een variant van git log, git-shortlog groepeert de commits die het toont op auteur. Dit is ideaal voor release-opmerkingen of gewoon om in de gaten te houden wie wat recentelijk heeft gedaan.
Een paar opties zorgen voor een zeer handige auteurssamenvatting voor alle doeleinden, perfect voor regelmatig gebruik via een alias. De -e optie toont naast namen ook e-mailadressen. De --overzicht optie geeft alleen een totale telling weer in plaats van het onderwerp van elke commit. En --genummerd bestelt de uiteindelijke output op basis van het totale aantal bijdragen. U kunt deze alias gebruiken:
alias.contrib 'shortlog -e --summary --numbered'
Om de volgende uitvoer te produceren:
9. Lijst met takken gesorteerd op laatst gewijzigd
Nu wat meer werk met branches, deze keer met een subcommando op een lager niveau. Deze gecompliceerde alias is een ander voorbeeld van een externe opdracht, in dit geval een pijplijn. Eerst de git-voor-elke-ref commando loopt door alle bekende branches. Het doet zo in auteurdatum order en formatteert de uitvoer om die datum naast de commit-hash te tonen. Ten slotte gebruikt het sed strippen refs/koppen/ van de naam van elke tak.
alias.b '!git for-each-ref --sort="-authordate" --format="%(authordate)%09%(objectname: short)%09%(refname)" refs/heads | sed -e "s-refs/heads/--"'
Zie ook: Deze Sed-voorbeelden maken je een Linux Power User
10. Een alias om alle aliassen weer te geven
Met al deze ondersteuning voor aliassen, is het verrassend dat Git geen gemakkelijke manier biedt om alle aliassen die je hebt ingesteld te bekijken. Maar maak je geen zorgen, je kunt dat oplossen met een alias! De git config commando geeft een overzicht van alle huidige configuraties. U kunt waarden filteren met de --get-regexp optie, dus de volgende alias geeft je een handig git alias opdracht:
alias.alias 'git config --get-regexp ^alias.'
Bespaar tijd en frustratie met Git-aliassen
Git-aliassen besparen u tijd doordat u geen lange en gecompliceerde opdrachten hoeft te typen. Git heeft een enorm aantal subcommando's, maar aliassen zijn gemakkelijk te hergebruiken en te onderhouden. U kunt zelfs aliassen in uw project bundelen via lokale configuratie, zodat u snelkoppelingen en standaardpraktijken kunt delen.
Net als Linux-aliassen kun je met Git-aliassen minder typen en meer doen. Probeer te experimenteren met de aliassen hierboven en verken de volledige Git-opdrachtenset om de rijkdom aan beschikbare functionaliteit te zien.
Breng je Git-vaardigheid van beginner tot gevorderd met deze uitgebreide gids.
Lees volgende
- Programmeren
- GitHub
- Codeertips
Bobby is een technologie-enthousiasteling die bijna twee decennia als softwareontwikkelaar heeft gewerkt. Hij is gepassioneerd door gamen, werkt als recensie-editor bij Switch Player Magazine en is ondergedompeld in alle aspecten van online publiceren en webontwikkeling.
Abonneer op onze nieuwsbrief
Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!
Klik hier om je te abonneren