W3docs

git alias

Découvrez les alias Git, comment les créer avec git config et les utiliser pour raccourcir vos commandes Git au quotidien.

gitalias

Qu'est-ce qu'un alias Git ?

Un alias Git est un raccourci personnalisé qui associe un nom court et mémorable à une commande Git plus longue (ou même à une chaîne de commandes). Une fois défini, taper git co peut exécuter git checkout, économisant des frappes et réduisant les fautes de frappe sur des commandes utilisées des dizaines de fois par jour.

Il n'existe pas de commande git alias dédiée. Les alias sont plutôt stockés comme des entrées de configuration ordinaires, donc vous les créez avec la commande git config ou en modifiant directement un fichier de configuration Git. Comme ils ne sont que de la configuration, les alias respectent les règles de portée normales de Git : définissez-les globalement (dans ~/.gitconfig) pour que chaque dépôt puisse les utiliser, ou localement (dans le .git/config d'un seul dépôt) lorsqu'un alias n'a de sens que pour ce projet.

Cette page couvre les deux façons de créer des alias, comment les vérifier, comment créer des alias pour des commandes qui acceptent des arguments, comment exécuter des commandes shell externes depuis un alias, et quelques alias utiles à ajouter dès aujourd'hui.

Créer des alias avec git config

La façon la plus courante d'ajouter un alias est la commande git config avec le flag --global, qui écrit dans ~/.gitconfig pour que l'alias soit disponible dans tous les dépôts :

git config --global alias.co checkout

La forme générale est git config --global alias.<raccourci> "<commande>". L'exemple ci-dessus vous permet d'exécuter git co partout où git checkout est attendu. Retirez --global pour limiter l'alias au dépôt courant uniquement.

Vous pouvez confirmer que l'alias a été enregistré avec git config --list, qui affiche toutes les valeurs de configuration actives :

git config --list

La nouvelle entrée apparaît dans la sortie sous la forme :

alias.co=checkout

Désormais, l'alias se comporte exactement comme si vous aviez tapé la commande complète. Tout argument supplémentaire que vous passez est transmis à la commande sous-jacente :

git co -b new-feature

Cela exécute git checkout -b new-feature, créant et basculant vers une branche nommée new-feature.

Créer des alias en modifiant .gitconfig

Comme les alias sont de la configuration simple, vous pouvez aussi les ajouter en modifiant le fichier de configuration directement. Ouvrez ~/.gitconfig (global) ou le .git/config d'un dépôt (local) et ajoutez une section [alias] :

[alias]
co = checkout
ci = commit
st = status

Chaque ligne sous [alias] est raccourci = commande. C'est exactement ce que produit git config --global alias.co checkout, donc les deux méthodes sont interchangeables — modifier le fichier est pratique lorsque vous souhaitez ajouter plusieurs alias à la fois.

Créer des alias avec des arguments

Les alias fonctionnent bien pour des commandes qui prennent toujours les mêmes flags. Par exemple, un log compact et décoré sur une ligne :

git config --global alias.lg "log --oneline --graph --decorate --all"

Exécuter git lg affiche alors un historique compact sous forme de graphe. Voir git log pour savoir ce que fait chaque flag.

Astuce

Entourez la commande de guillemets lorsqu'elle contient des espaces ou des flags, sinon le shell transmet les mots supplémentaires à git config au lieu de les stocker dans l'alias.

Exécuter des commandes shell depuis un alias

Pour exécuter un programme externe (et non une sous-commande Git), préfixez la valeur de l'alias avec !. Git exécute alors le reste dans un shell :

git config --global alias.visual "!gitk"

C'est aussi de cette façon que vous combinez plusieurs étapes. L'alias ci-dessous indexe tout et effectue un commit en une seule opération, où $1 est le message de commit que vous passez :

git config --global alias.ac '!f() { git add -A && git commit -m "$1"; }; f'

Désormais, git ac "fix typo" exécute git add -A suivi de git commit -m "fix typo".

Alias Git utiles

Voici quelques alias qui raccourcissent les commandes du quotidien. Ajoutez-les avec git config --global alias.<nom> "<commande>" :

AliasÉquivalentDescription
co = checkoutgit checkoutBascule entre les branches ou restaure des fichiers.
cob = checkout -bgit checkout -bCrée et bascule vers une nouvelle branche.
ci = commitgit commitEnregistre les modifications indexées. Voir git commit.
st = status -sbgit status -sbAffiche un statut court avec info de branche.
f = fetch -pgit fetch -pRécupère et supprime les branches de suivi distantes obsolètes.
p = pushgit pushPousse les modifications vers un dépôt distant.
bd = branch -dgit branch -dSupprime une branche uniquement si elle est fusionnée.
ba = branch -agit branch -aListe les branches locales et de suivi distant.
bD = branch -Dgit branch -DSupprime une branche de force.
dc = diff --cachedgit diff --cachedAffiche les modifications indexées.

Pratique

Pratique
Quelle est la méthode correcte pour créer un alias Git pour la commande 'commit' en utilisant la commande 'git config' ?
Quelle est la méthode correcte pour créer un alias Git pour la commande 'commit' en utilisant la commande 'git config' ?
Was this page helpful?