Skip to content

Alias Git

Simplifiez votre workflow de versioning avec des raccourcis puissants.

Aperçu

Les alias Git créent des raccourcis pour les commandes Git courantes. Faisant partie de la configuration Dotfiles, ces alias se chargent automatiquement via Chezmoi.

Définis dans git.aliases.sh et signing.aliases.sh, ces alias sont disponibles dans toute session Bash ou Zsh une fois installés.

Référence

Noyau

AliasCommandeDescription
ggitRaccourci pour git
gtpgit rev-parse --show-toplevelAfficher le répertoire racine du dépôt
grpagit rev-parse --abbrev-ref HEADAfficher le nom de la branche courante
gconflgit config --listLister toute la configuration Git
gconfrgit config --local --get remote.origin.urlAfficher l’URL du remote origin
gconfdiffgit config alias.dcolor "diff --color-words"Configurer un alias diff en mots colorés

Zone de travail

AliasCommandeDescription
gagit addStage des fichiers
gaagit add --allStage tous les changements (suivis et non suivis)
gadgit add .Stage tout dans le répertoire courant
gaugit add --updateStage modifications et suppressions (sans nouveaux fichiers)
gclgit cloneCloner un dépôt
gingit initInitialiser un nouveau dépôt Git
gcogit checkoutChanger de branche ou restaurer des fichiers
gcbgit checkout -bCréer et basculer sur une nouvelle branche
gdisgit checkout --Annuler les changements du répertoire de travail
grsgit restoreRestaurer les fichiers du répertoire de travail
gmvgit mvDéplacer ou renommer un fichier
grmgit rmSupprimer des fichiers du dépôt et de l’index
grmcgit rm --cachedDésindexer un fichier (le conserver sur disque)
gstgit statusAfficher l’état du répertoire de travail
gstsgit status --shortÉtat en format court
gstsbgit status --short --branchÉtat court avec branche et tracking
gstagit stash saveMettre de côté les changements
gstpgit stash popAppliquer et supprimer le dernier stash
gstdgit stash dropSupprimer le dernier stash
gcloutgit clean -df && git checkout -- .Annuler tous les changements et fichiers non suivis

Commits

AliasCommandeDescription
gcgit commit -aCommit tous les fichiers suivis
gcagit commit --amendAmender le dernier commit
gcallgit add -A && git commit -avStager tout et commit en mode verbeux
gcamgit commit --amend --messageAmender avec un nouveau message
gcanegit commit --amend --no-editAmender sans changer le message
gcmgit commit --messageCommit avec message inline

Diff et historique

AliasCommandeDescription
gdgit diffAfficher les changements non stagés
gdchgit diff --name-statusNoms et statuts des fichiers modifiés
gdhgit diff HEADTous les changements depuis le dernier commit
gdstagedgit diff --stagedAfficher les changements stagés
gdcachedgit diff --cachedDiff entre index et HEAD
gdstatgit diff --stat --ignore-space-change -rDiffstat en ignorant les espaces
glgit log --since="last month" --onelineLog en une ligne du dernier mois
glggit log --graph --all --oneline --decorateLog graphique de toutes les branches
glgggit log --oneline --graph --full-history --all --color --decorateLog graphique complet avec couleurs
glcgit log --oneline --reverseLog chronologique en une ligne
gldgit log --since=1-day-agoLog des dernières 24 heures
gldcgit log -1 --date-order --format=%cIDate ISO 8601 du dernier commit
gldlgit log --date=localLog avec dates en timezone locale
glfgit log ORIG_HEAD.. --stat --no-mergesNouveaux commits après fetch (sans merges)
gll(format graphique décoré)Log détaillé avec auteur et statut GPG

Branches

AliasCommandeDescription
gbgit branchLister les branches locales
gbdgit branch -dSupprimer une branche fusionnée
gblgit branch -lLister les branches par motif
gbrgit branch -rLister les branches distantes
gbrdgit branch -d -rSupprimer une branche distante suivie
gbrsbgit show-branchAfficher les branches et leurs commits
gswbgit switchChanger de branche (moderne)
gcodegit checkout main && git branch --merged | xargs git branch --deleteSupprimer les branches fusionnées dans main
gcomgit checkout main && git fetch origin --prune && git reset --hard origin/mainRéinitialiser main local sur origin/main

Remotes et Push/Pull

AliasCommandeDescription
gfgit fetchRécupérer depuis le remote
gpgit pullTirer depuis le remote
gphgit pushPousser vers le remote
gpogit push originPousser vers origin
gpbgit push --set-upstream origin $(git branch --show-current)Pousser et définir l’upstream
gpollgit push origin --allPousser toutes les branches vers origin
gpullgit pullTirer depuis le remote
gpushgit pushPousser vers le remote
grgit remoteGérer les remotes
gragit remote addAjouter un remote
grallgit remote | xargs -L1 git push --allPousser toutes les branches vers tous les remotes
graogit remote add originAjouter le remote origin
grvgit remote -vAfficher les URL des remotes

Revert et Reset

AliasCommandeDescription
grevgit revertRevert un commit
grevncgit revert --no-commitRevert sans auto-commit
grbgit rebaseRebaser la branche courante
grbkgit reset --soft HEAD^Annuler le dernier commit, garder les changements stagés
gresclgit reset --hard HEAD~1 && git clean -fdHard reset et nettoyage des fichiers non suivis
greshgit reset --hard HEAD~1Hard reset sur le commit précédent
grespgit reset --hard && git clean -ffdxRéinitialiser tout à l’état initial
gressgit reset --soft HEAD~1Soft reset (garder les changements stagés)

Sous-modules

AliasCommandeDescription
gsmgit submoduleGérer les sous-modules
gsmigit submodule initInitialiser les sous-modules
gsmagit submodule addAjouter un sous-module
gsmsgit submodule syncSynchroniser les URLs avec .gitmodules
gsmugit submodule updateMettre à jour les sous-modules
gsmuigit submodule update --initMettre à jour et initialiser
gsmuirgit submodule update --init --recursiveMettre à jour, initialiser et récursiver

Outils

AliasCommandeDescription
gggit grepRechercher dans le dépôt
gbsgit bisectRecherche binaire d’un commit fautif
undopushgit push -f origin HEAD^:masterAnnuler le dernier push vers master

Signature et sécurité

AliasCommandeDescription
enable-signing(assistant interactif)Configurer la signature GPG ou SSH des commits
verify-signaturesgit log --show-signature -n 10Vérifier les signatures des 10 derniers commits
check-signinggit config --list | grep "gpg|signing"Vérifier la configuration de signature actuelle