Configurer la ligne de commande git

Voici les réglages globaux que j'utilise dans git.

Le fichier est situé à l'emplacement ~/.gitconfig, il est défini en sections contenant les options :

[user]
    # Mon nom d'utilisateur
    name = Alexis Lefebvre
    # …
[push]
    # Pousser les changements vers une branche du même nom, par défaut
    default = current
[commit]
    # Signer les commits par GPG
    gpgsign = true
[core]
    # Chemin vers la liste des dossiers et fichiers à ignorer (voir ci-dessous)
    excludesfile = ~/.gitignore_global
[gpg]
    # Nom du programme à utiliser pour la signature GPG (sans cela le démon GPG ne stocke pas le mot de passe en mémoire)
    program = gpg2
[rebase]
    # Utiliser git stash lors des rebase de branches
    autoStash = true
[fetch]
    # Activer l'option prune afin de ne plus suivre effacées sur les dépôts distants
    prune = true
[alias]
    # Afficher l'historique avec des couleurs et les dates
    # Source : https://about.gitlab.com/2016/12/08/git-tips-and-tricks/
    lg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit --date=relative
    lol = log --graph --decorate --pretty=oneline --abbrev-commit

Ces options peuvent se définir en modifiant ce fichier ou en utilisant la ligne de commande, par exemple la commande git config --global rebase.autoStash true définit la dernière option.

Le fichier ~/.gitignore_global contient la liste des dossiers et fichiers qui seront ignorés par git :

/.idea

/var/cache
/var/logs
/cov*

/.idea est le dossier qui contient les paramètres de PhpStorm et /var/cache et /var/logs sont des fichiers temporaires de Symfony. Comme le montre /cov*, on peut également utiliser des caractères joker pour exclure les fichiers ou dossiers dont le chemin commence par /cov.