Outils pour utilisateurs

Outils du site


dev:git:configuration

Configuration des dépots Git

La commande git config permet de personnaliser/spécifier le comportement par défaut de git

Afficher la configuration

Pour lister la configuration actuellement définie:

git config --list

Portée des définitions

Les déclarations des variables de configuration peuvent être faites à différents niveaux:

--system Variables /etc/git/config
--global Variables définies pour tous les projet de l'utilisateur ~/.gitconfig
--local Variables définies sur le projet courant .git/config

Paramètres utilisateur

Les variables user.* permettent de définir l'identité du développeur.

Lors de l'utilisation de gitlab, le nom d'utilisateur, le mail, la clé GPG doivent correspondre a ceux déclarés sur le compte en ligne gitlab.

Afficher l'identité définie localement

Sans argument de modification de la portée, c'est la valeur définie localement qui est affichée:

$ git config user.name
Toto
$ git config --global user.name 
Yoann BEZILLE

Dans l'exemple ci dessus, pour le dépot courant l'utilisateur déclaré est Toto, la valeur globale est définie à “Yoann BEZILLE”. Les commits pour ce dépôt seront marqués comme provenant de Toto. Pour d'autres dépôts sur la même machine, si la variable n'est pas définie localement c'est la portée globale qui sera visible, ils seront alors marqués comme émis de “Yoann BEZILLE”

Définir son identité

git config --global user.name "Yoann BEZILLE"
git config --global user.email contact@example.org

Définir la clé GPG pour signature du travail

Pour signer le commit, il faut au préalable indiquer à Git quelle clé privée doit être utilisée pour la signature. Le détail d'application de la signature est abordée dans le wiki signer son travail dans Git.

Lister les clés privées enregistrées dans GPG, repérer l'identifiant de la clé à utiliser, c'est celle-ci qu'il faut renseigner pour la variable user.signingkey

gpg2 --list-secret-keys --keyid-format LONG

L'identifiant est une chaîne hexadécimale, on définit la valeur de la variable user.signingkey avec cette chaîne:

git config --global user.signingkey KEY_ID
 
# Spécifier le programme à utiliser, peut éviter certaines erreurs
git config --global gpg.program gpg2
 
# Pour signer systématiquement les commits
git config --global commit.gpgsign true 

Ignorer certains fichiers

Pour préciser à git que certains fichiers n'ont pas a être suivis on dispose de deux fichiers:

  • le fichier .gitignore est inclus au dépôt, il est partagé avec tous. Il permet de définir des exclusions valables pour tous.
  • le fichier .git/info/exclude permet de définir des exclusions localement. Ce paramétrage est particulièrement utile pour des fichiers que les autres utilisateurs ne sont pas amenés à créer.

Définir l'éditeur par défaut

Git lit les variables d'environnement $VISUAL et EDITOR pour déterminer l'éditeur de l'utilisateur. On peut déclarer explicitement son éditeur via la commande suivante:

git config --global core.editor vim

Renommer la branche principale

Lors de la création du dépôt, le nom de la branche principale est master. Cette convention tend à disparaitre et on recommande en général la nommer 'main' ou 'trunk'.

Pour que la branche principale soit main lors de la création de tous vos dépôt :

git config --global init.defaultBranch main

Lorsqu'un dépôt vient d' être créer on peut aussi simplement renommer la branche principale via la commande

git branch -m trunk
Ce sont de pures conventions : le nom de la branche principale peut être quelconque.

Les alias

Confère wiki syntaxe de définition d'alias Git .

Références

dev/git/configuration.txt · Dernière modification : 2024/10/03 19:34 de yoann