Ga naar hoofdinhoud

Git-alias: zo maak je tijdsbesparende snelkoppelingen in Git

Leer hoe je Git-aliases instelt om tijd te besparen, minder te typen en je ontwikkelproces te versnellen. Perfect voor beginners die productiever willen worden zonder extra tools.
· 14 min lezen

Verken met AI

Git is een krachtige oplossing voor versiebeheer, het delen van code en samenwerken aan complexe taken. Het is ook gemakkelijk toegankelijk via de commandoregel, waardoor je snel bij dit waardevolle hulpmiddel kunt. Maar tientallen keren per dag lange commando’s intypen wordt al snel saai. Daarom hebben engineers een manier bedacht om snelkoppelingen te definiëren: Git-aliases.

Git-aliases zijn aangepaste snelkoppelingen waarmee je je eigen commando’s kunt maken voor elke Git-actie of combinatie van acties. Ze maken het leven wat makkelijker met minder typwerk en een workflow die aansluit op jouw stijl of die van je bedrijf.

In deze tutorial bespreken we wat Git-aliases zijn, hoe je ze gebruikt en tips om ze op een verantwoorde manier te delen. Ben je nieuw met Git? Bekijk dan eerst onze cursus Introduction to Git en de track GitHub Foundations voor een solide basis voordat je aan de slag gaat.

Basisprincipes van Git-aliases

Voordat we aangepaste snelkoppelingen gaan maken, kijken we naar wat Git-aliases zijn, hoe ze werken en waarom ze zo nuttig zijn voor developers.

Wat zijn Git-aliases?

Een Git-alias is een aangepast commando dat je definieert in je Git-configuratie. Het is in feite een afkorting voor je meestgebruikte Git-commando’s.

Als je al vertrouwd bent met de commandoregel, denk je misschien dat Git-aliases erg lijken op shell-aliases. Maar er zijn belangrijke verschillen. Shell-aliases zijn snelkoppelingen die je in je shellconfiguratie definieert en kunnen worden gebruikt voor elk commandoregelprogramma, niet alleen Git.

Git-aliases daarentegen worden gedefinieerd in Git’s eigen configuratie en zijn alleen beschikbaar wanneer je het git-commando gebruikt. Git-aliases kunnen ook draagbaar zijn, omdat ze meereizen met je Git-config. Dat betekent dat je ze met je team kunt delen en dat ze consistent werken in verschillende omgevingen. Ze zijn ook makkelijker dan shell-aliases te documenteren en te onderhouden als onderdeel van je versiebeheersetup. Developers gebruiken Git-aliases om tijd en energie te besparen, typfouten te verminderen en hun workflows te automatiseren.

Wil je shell opnemen in je workflow? Bekijk dan onze shell-cursussen om te leren hoe.

Scope en persistentie van alias

Er zijn twee hoofdtypen aliases: globale aliases en lokale aliases. Het belangrijkste verschil zit in waar je ze definieert en waar ze beschikbaar zijn.

Een globale alias is in elke repository op je systeem te gebruiken. Als je een globale alias instelt, wordt deze opgeslagen in je globale Git-configuratiebestand. Dit is de beste plek om snelkoppelingen te definiëren die je overal wilt gebruiken.

Een korte waarschuwing over het gebruik van globale aliases: ze zijn specifiek voor jouw machine. Dit is belangrijk om te onthouden als je tussen machines wisselt of collega’s helpt op hun machine. Jouw globale aliases werken niet op hun machine.

Een lokale alias daarentegen is specifiek voor één repository. Ze worden opgeslagen in het configuratiebestand van die specifieke repository. Lokale aliases zijn handig als je projectspecifieke snelkoppelingen nodig hebt of wilt experimenteren zonder je globale setup te beïnvloeden.

Lokale aliases hebben voorrang

Belangrijk om te weten: als je dezelfde alias zowel globaal als lokaal definieert, heeft de lokale alias voorrang. Dat betekent dat je computer de lokale alias gebruikt en de globale negeert zolang je in de lokale repository zit. Zodra je die repository verlaat, krijgt de globale alias weer de overhand. Dit is handig, omdat je zo globale defaults per project kunt overschrijven.

Wil je meer weten over Git configureren op verschillende niveaus? Bekijk Intermediate Git.

Hoe naar een Git-alias wordt gezocht in het lokale Git-configuratiebestand

Het stroomdiagram hierboven laat zien dat Git eerst naar je alias zoekt in het lokale configuratiebestand. Als die daar niet wordt gevonden, controleert Git het globale configuratiebestand om te bepalen welke commando’s uitgevoerd moeten worden.

Git-aliases maken en configureren

Git-aliases instellen is eenvoudig, maar de methode die je kiest kan afhangen van je workflow, besturingssysteem en persoonlijke voorkeur.

Manieren om te creëren

Er zijn twee hoofdmanieren om een Git-alias te maken: je kunt een nieuwe Git-alias maken via de commandoregel of je Git-configuratiebestand direct bewerken.

Via de commandoregel

De eenvoudigste manier om een alias toe te voegen is met het commando git config. Het algemene recept is:

git config alias.<shortcut> <full-command>

Laten we bijvoorbeeld een snelkoppeling maken voor git commit -m, waarmee je gestage wijzigingen met een bericht opslaat in de repository.

git config --global alias.cm "commit -m"

Dit commando voegt een nieuwe alias cm toe die git commit -m uitvoert. De vlag --global geeft aan dat de alias in al je repositories beschikbaar moet zijn. Als je --global weglaat, wordt de alias standaard lokaal toegepast op je huidige repository.

Zodra je je gewenste aliases hebt gemaakt, wil je mogelijk dubbelchecken wat je hebt aangemaakt. Je kunt de commandoregel gebruiken om al je huidige aliases te zien met:

git config --get-regexp ^alias\\\\.

Dit toont elke alias en het bijbehorende commando. Je kunt ook een specifieke alias controleren. Het volgende commando geeft bijvoorbeeld de waarde van de alias lg terug uit je configuratiebestand.

git config alias.lg

Dit is een snelle manier om te bevestigen dat je aliases correct zijn ingesteld.

Het configuratiebestand direct bewerken

Als je bovenstaande commando’s gebruikt, wordt je Git-configuratiebestand (we noemen dit vanaf nu het Git-configbestand), globaal of lokaal, bijgewerkt met je gekozen aliases. Je kunt dit proces omzeilen door je configbestand direct aan te passen.

Je moet je Git-configbestand openen in een teksteditor en de aliases toevoegen onder de sectie [alias]. In Windows vind je dit bestand meestal in C:\\Users\\<YourUsername>\\.gitconfig voor globale aliases of .git\\config in een repository voor lokale aliases. Op macOS of Linux staan globale aliases meestal in ~/.gitconfig en lokale in .git/config.

Je Git-configbestand ziet er ongeveer zo uit (als het een globaal bestand is, kan het nog wat extra onderdelen bevatten):

[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true

[remote "origin"]
    url = <https://github.com/username/repo.git>
    fetch = +refs/heads/*:refs/remotes/origin/*

[branch "main"]
    remote = origin
    merge = refs/heads/main

[alias]
    cm = commit -m

Scrollen we naar de sectie [alias], dan kunnen we onze aangepaste snelkoppelingen toevoegen:

[alias]
    cm = commit -m
    st = status
    lg = log --oneline --graph --decorate --all

Deze aanpak is vooral handig als je meerdere aliases tegelijk wilt toevoegen. Het maakt het ook makkelijk om een set aliases te kopiëren en plakken van een collega of een online bron.

Voor een handig naslagwerk met veelgebruikte Git-commando’s, bekijk onze Complete Git Cheat Sheet.

OS- en shellspecifieke configuratie

Git-aliases worden gedefinieerd in je Git-configuratie, dus ze werken over besturingssystemen en shells heen. Hoe je ze gebruikt, kan echter van je omgeving afhangen.

Op Windows werken Git-aliases betrouwbaar in Git Bash en WSL (Windows Subsystem for Linux). In Command Prompt en PowerShell werken eenvoudige aliases zoals st voor status prima, maar geavanceerde die afhankelijk zijn van shellfeatures zoals pipes of meerdere commando’s, kunnen zich anders gedragen dan verwacht. Voor complexe aliasing zijn Git Bash of WSL de betere keuze.

Op macOS en Linux werken Git-aliases over het algemeen hetzelfde in Bash, Zsh en andere Unix-achtige shells. Zowel eenvoudige als complexe aliases zijn zonder problemen te gebruiken.

Fish shell is een speciaal geval omdat het een andere syntax gebruikt dan Bash en Zsh. Sommige geavanceerde Git-aliases die uitgaan van POSIX-shellsyntax, draaien mogelijk niet goed in Fish. In die situaties moet je de alias herschrijven als een shellfunctie of bij eenvoudigere Git-aliases blijven.

Voor meer basiskennis over de shell, zie onze Bash & Zsh Shell Terminal Basics Cheat Sheet.

Git-aliases beheren

Zodra je je aliases hebt ingesteld, moet je ze georganiseerd houden, ze waar nodig bijwerken en eventuele conflicten oplossen.

Aliases weergeven, bijwerken en verwijderen

We hebben al besproken hoe je een lijst van je aliases kunt bekijken, in het configuratiebestand of via de commandoregel. Maar wat als je er een wilt wijzigen of verwijderen? Gelukkig is dat ook heel eenvoudig. Om een alias te wijzigen, kun je het commando git config opnieuw uitvoeren met een nieuwe waarde, of de betreffende regel direct in je configuratiebestand bewerken.

Een alias verwijderen is net zo eenvoudig. In de commandoregel kun je de vlag --unset gebruiken om een alias te verwijderen:

git config --global --unset alias.lg

Of je verwijdert de regel simpelweg uit je configbestand. Na verwijdering is de alias niet meer beschikbaar.

Omgaan met aliasconflicten en -problemen

Soms kun je conflicten tegenkomen, zoals het definiëren van dezelfde alias zowel globaal als lokaal. Onthoud dat lokale aliases globale overschrijven binnen dezelfde repository. Als je merkt dat je gebruikelijke alias niet goed werkt, controleer dan in welke repository je zit en of er lokale aliases zijn gedefinieerd. Het is ook een goed idee om namen te vermijden die overlappen met ingebouwde Git-commando’s, zoals commit of push.

Als je tussen machines wisselt of Git upgradet, is het verstandig te controleren of je aliases nog steeds werken. En als je samenwerkt, overweeg dan je aliases te documenteren of een gedeeld configuratiebestand te gebruiken, zodat iedereen toegang heeft tot dezelfde snelkoppelingen.

Veelvoorkomende aliastypen en use-cases

Laten we een paar verschillende categorieën Git-aliases bekijken en hoe ze je dagelijkse werk kunnen versnellen.

Commando’s afkorten

Een van de meest voor de hand liggende toepassingen is het afkorten van lange of vaak gebruikte commando’s. In plaats van git checkout main te typen, kun je git co main gebruiken, of git status vervangen door gewoon git st. Na verloop van tijd besparen deze kleine tweaks je een hoop typwerk en voelt je workflow sneller aan.

Verbeterde opmaak van output

De ruwe output van Git kan soms lastig te lezen zijn, vooral bij commando’s zoals git log of git diff. Met aliases kun je de outputopmaak aanpassen voor meer duidelijkheid. We kunnen een aangepaste logweergave definiëren met kleuren, datums en branches, of diffs leesbaarder maken met woordmarkering. Dit maakt het veel makkelijker om veranderingen te zien en de geschiedenis te volgen.

We kunnen bijvoorbeeld een aangepaste alias voor git log maken om de leesbaarheid van de output te verbeteren:

git config --global alias.lg "log --oneline --graph --decorate --date=short --pretty=format:'%h - (%cd) %an %d %s'"

In plaats van git log te typen en generieke output te krijgen:

commit c2f3d4a6b8e9d55f45e2f98c879f6f43be11a765 (HEAD -> main)
Author: Jane Deer <[email protected]>
Date:   Sun Aug 10 14:12:03 2025 -0400

    Fix typo in README

commit a7b1e22c0f6a2d876fe4c9d8e00c64e28793d9e0
Author: John Doe <[email protected]>
Date:   Tue Aug 5 09:33:45 2025 -0400

    Add login validation

Krijgen we een veel eenvoudigere en beter leesbare output met onze alias git lg:

* c2f3d4a - (2025-08-10) Jane Deer (HEAD -> main) Fix typo in README
* a7b1e22 - (2025-08-05) John Doe Add login validation

Je ziet hoe onze gealiseerde output aanzienlijk makkelijker te lezen is, zeker als er twintig of meer entries zouden zijn in plaats van deze twee.

Workflowautomatisering

Aliases kunnen ook fungeren als mini-automatiseringstools voor je Git-workflow. Je kunt bijvoorbeeld meerdere commando’s combineren in één alias die in één stap wijzigingen staged, commit en pusht. Dit soort automatisering is handig, vooral voor teams die DevOps-praktijken gebruiken en waarde hechten aan consistentie.

Lees meer over hoe Git aansluit op bredere automatiseringsworkflows in CI/CD for Machine Learning.

Veelgebruikte en door de community aangeraden aliases

Sommige aliases zijn zo populair dat ze vaste prik zijn geworden in de Git-community. Dit zijn zowel snelkoppelingen als meer geavanceerde aliases die het leven makkelijker maken. Bekijk de onderstaande tabel met 20 van de meest voorkomende Git-aliases die ik zie.

Volledig commando

Alias

Functie

status

st

Toon de status van de werkdirectory

checkout

co

Wissel van branch of herstel bestanden

branch

br

Branches weergeven, maken of verwijderen

commit

ci

Gestage wijzigingen vastleggen

commit -m

cm

Commit met een bericht

add -A

aa

Alle wijzigingen (nieuw, gewijzigd, verwijderd) stagen

reset HEAD --

unstage

Bestanden unstage zonder wijzigingen weg te gooien

log -1 HEAD

last

Toon de laatste commit

log --oneline --graph --decorate --date=short --pretty=format:\"%h - (%cd) %an %d %s\"

lg

Mooie logweergave met grafiek en metadata

log --pretty=format:\"%h %ad %s%d [%an]\" --graph --date=short

hist

Nog een leesbaar logformaat met geschiedenisgrafiek

diff

df

Niet-gestage wijzigingen tonen

diff --cached

dc

Gestage wijzigingen tonen

pull

pl

Ophalen van en integreren met remote

push

ps

Wijzigingen uploaden naar remote

rebase

rb

Commits opnieuw toepassen boven op een andere basis-tip

rebase --abort

rba

Een lopende rebase annuleren

rebase --continue

rbc

Rebase hervatten na het oplossen van conflicten

commit --amend

fix

De laatste commit bewerken

reset --soft HEAD~1

undo

Laatste commit ongedaan maken maar wijzigingen staged houden

fetch --all --prune

fa

Alle remotes updaten en verwijderde branches opruimen

Geavanceerde aliastactieken

Naast het afkorten van lange commando’s zijn er geavanceerde aliastactieken die flexibiliteit bieden om te integreren met je shell, parameters te verwerken of zelfs aliases op specifieke repositories af te stemmen.

Integratie met shellcommando’s

Je kunt shellcommando’s direct opnemen in je Git-aliases. Door een alias te laten voorafgaan door !, geeft Git de rest door aan je shell. Dit opent de mogelijkheid om Git-acties te combineren met externe tools, zoals het draaien van een linter vóór het committen of meerdere commando’s aan elkaar koppelen. Als je nieuw bent met shells, kan een bron als de Bash & zsh Shell Terminal Basics Cheat Sheet helpen om te begrijpen hoe dit in de praktijk werkt.

Parameters verwerken

Soms wil je aliases die niet hardgecodeerd zijn, maar zich aanpassen aan de argumenten die je meegeeft. Door aliases te schrijven als anonieme Bash-functies kun je parameters accepteren en dynamisch gebruiken. Deze flexibiliteit laat je terugkerende taken omzetten in eenvoudige, herbruikbare commando’s op maat van jouw behoeften.

Laten we bijvoorbeeld een geparametriseerde Git-alias maken die onze commits doorzoekt op specifieke tekst. Op Windows kan dit in Git Bash. Op macOS en Linux werkt dezelfde alias ook, omdat Git hem uitvoert in een Bash-compatibele shell.

git config --global alias.find '!f() { git log --grep="$1"; }; f'

Als je nu git find bugfix uitvoert, worden commitberichten doorzocht op “bugfix” en zie je de bijpassende commits.

Conditionele configuratie

Met Git’s includeIf-directive kun je verschillende sets aliases laden afhankelijk van de repository of omgeving. Misschien wil je bijvoorbeeld één set aliases voor werkprojecten en een andere voor persoonlijke projecten. Conditionele configs houden je setup georganiseerd en zorgen dat de juiste tools in de juiste context beschikbaar zijn.

In je globale git-configbestand kun je opnemen:

[includeIf "gitdir:C:/Users/YourName/work/"]
    path = C:/Users/YourName/.gitconfig-work
[includeIf "gitdir:C:/Users/YourName/personal/"]
    path = C:/Users/YourName/.gitconfig-personal

Definieer vervolgens in C:/Users/YourName/.gitconfig-work aliases zoals:

[alias]
    st = status
    lg = log --oneline --graph

En in C:/Users/YourName/.gitconfig-personal:

[alias]
    st = status -s
    co = checkout

Wanneer je nu in een repository onder C:/Users/YourName/work/ zit, gebruikt git lg de workspecifieke alias, terwijl in C:/Users/YourName/personal/ git co de persoonlijke alias gebruikt. Het is wel belangrijk te onthouden in welke directory je zit als je dit systeem gebruikt. Je wilt je aliases niet door elkaar halen!

Een opmerking voor Mac/Linux-gebruikers: vervang Windows-paden gewoon door Unix-achtige paden, bijvoorbeeld: ~/work/ of ~/personal/. Het gedrag is verder identiek.

Strategieën voor onderhoud en samenwerking

Naarmate je verzameling Git-aliases groeit, worden duidelijkheid en consistentie essentieel, zeker als je samenwerkt. Laten we enkele best practices bespreken voor het documenteren, delen en beveiligen van je aliases, zodat ze een aanwinst blijven in plaats van een bron van verwarring.

Documentatie

Een goede documentatie van Git-aliases is net zo belangrijk als de documentatie van elke andere stap in het ontwikkelproces. Deze documentatie is goud waard voor nieuwe teamleden en voor je toekomstige zelf. Enkele strategieën:

  • Onderhoud een sectie in de README van je project voor projectspecifieke Git-aliases. Beschrijf per alias kort het doel en het gebruik.
  • Als je .gitconfig direct bewerkt, voeg dan commentaar toe boven complexe of niet-vanzelfsprekende aliases. Bijvoorbeeld:
# Quickly stage, commit, and push changes
acp = !git add -A && git commit -m \\"$1\\" && git push
  • Werk je in een team, overweeg dan om de gebruikte aliases te standaardiseren. En als je team een wiki of intern documentatieplatform gebruikt, neem dan een pagina op over Git-aliases en werk die bij naarmate je project evolueert.

Heldere documentatie en communicatie zorgen ervoor dat iedereen begrijpt wat elke alias doet, waardoor het risico op fouten afneemt en het makkelijker wordt om nieuwe snelkoppelingen over te nemen.

Beveiliging en validatie

Nog een aandachtspunt is beveiliging. Hoewel aliases krachtig zijn, kunnen ze ook risico’s met zich meebrengen als je ze niet zorgvuldig beheert. Aliases die destructieve acties uitvoeren, zoals branches verwijderen of force-pushen, moeten bijvoorbeeld goed doordacht en getest worden op niet-kritieke data. Het laatste wat je wilt, is denken dat je iets onschuldigs doet maar per ongeluk belangrijke branches uit je repository verwijderen!

Een levensreddende maatregel die je kunt toepassen bij potentieel gevaarlijke Git-aliases is de vlag --dry-run. Hiermee kun je de voorgenomen actie die je met de alias uitvoert, eerst bekijken zonder hem daadwerkelijk uit te voeren! Stel dat je file.txt wilt verwijderen met een alias. Doe jezelf een plezier en draai hem eerst als dry run om te controleren of de juiste actie wordt uitgevoerd.

git rm --dry-run file.txt

Een andere potentiële zorg zijn aliases die shellcommando’s of externe scripts uitvoeren. Aliases die beginnen met ! voeren alles wat volgt uit in je shell. Dat betekent dat een slecht beoordeelde of onbetrouwbare alias bestanden kan verwijderen, data kan stelen of andere schadelijke acties kan uitvoeren. Evenzo kunnen aliases die externe scripts aanroepen riskant zijn als het script van een niet-geverifieerde bron komt of is aangepast. Het is belangrijk om elke alias te beoordelen voordat je hem gebruikt en om niet blindelings aliases van internet te kopiëren. Dit is ook waarom ik er de voorkeur aan geef Git-commando’s niet te mengen met shellcommando’s in dezelfde alias.

Conclusie

Git-aliases zijn een krachtige maar vaak onderbenutte functie die de productiviteit van zowel individuen als teams aanzienlijk kan verbeteren. Door complexe of repetitieve commando’s te verkorten tot memorabele snelkoppelingen, helpen aliases de cognitieve belasting te verlagen, typfouten te minimaliseren en je dagelijkse workflow te stroomlijnen.

Heb je meer vragen of wil je dieper duiken? Bekijk de Complete Git Cheat Sheet en andere gelinkte resources in dit artikel. Ben je benieuwd naar andere manieren om je commandoregelervaring te vereenvoudigen? Dan is How to Use a SQL Alias to Simplify Your Queries wellicht ook interessant.

Amberle McKee

Auteur

Amberle McKee

Ik ben gepromoveerd en heb 13 jaar ervaring met het werken met data in een biologische onderzoeksomgeving. Ik maak software in verschillende programmeertalen, waaronder Python, MATLAB en R. Ik deel met plezier mijn liefde voor leren met de wereld.

FAQs

Wat is een Git-alias?

Een Git-alias is een aangepaste snelkoppeling voor één of meer Git-commando’s. Ze laten je snel commando’s of reeksen uitvoeren zonder veel extra typwerk.

Kan ik Git-aliases in meerdere repositories gebruiken?

Ja. Door een Git-alias als globaal in te stellen, kun je hem in meerdere repositories gebruiken. Lokale aliases overschrijven de globale echter.

Hoe verwijder ik een Git-alias als ik hem niet meer nodig heb?

Om een Git-alias te verwijderen, kun je ofwel het Git-configuratiebestand openen en hem handmatig verwijderen, of je gebruikt de vlag --unset in de commandoregel.

Hoe kan ik Git-aliases aanpassen aan mijn specifieke workflow?

De beste manier om Git-aliases aan te passen aan jouw specifieke workflow is te kijken welke commando’s en reeksen je het vaakst gebruikt en daar aangepaste aliases voor te maken om ze te vereenvoudigen of te automatiseren. Git-aliases kunnen heel persoonlijk zijn en taken vereenvoudigen die jij irritant vindt.

Zijn Git-aliases hetzelfde als shell-aliases?

Nee. Git-aliases worden in Git gedefinieerd en gebruiken alleen Git-commando’s. Shell-aliases worden binnen je shell gedefinieerd en kunnen commando’s van veel tools gebruiken, waaronder Git.

Onderwerpen

Gerelateerd