Puis-je charger un fichier .gitconfig d'un autre? [dupliquer]
-
26-09-2019 - |
Question
Possible en double: Est-il possible d'inclure un fichier dans votre .gitconfig
Avec bash et zsh je peux trouver la source subfiles afin de mieux organiser ma config.
Puis-je faire quelque chose de similaire avec .gitconfig
?
La solution
(Mars 2012) Il ressemble à ceci va enfin être bientôt possible - git 1.7.10 va soutenir cette syntaxe dans .gitconfig
:
[include]
path = /path/to/file
Voir pour une description détaillée du changement git et ses cas de pointe.
Par ailleurs, deux de la valeur de subtilités indiquant:
-
extension de chemin d'accès, par exemple,
~
ou$HOME
, ne semble pas être pris en charge. -
Si un chemin relatif est spécifié, il est par rapport au fichier .gitconfig qui a la déclaration de
[include]
. Cela fonctionne correctement même à travers enchaînée comprend - par exemple~/.gitconfig
peut avoir:[include] path = subdir/gitconfig
et
subdir/gitconfig
peut avoir:[include] path = nested_subdir/gitconfig
... qui fera
subdir/nested_subdir/gitconfig
à charger. -
Si git ne peut pas trouver le fichier cible, il ignore silencieusement l'erreur. Cela semble être par la conception.
Autres conseils
(Mars 2012): Comme mentionné dans Mike Morearty 's answer (que j'upvoted), git 1.7.10+ soutiendra cette fonction.
Réponse originale (Octobre 2010):
À l'heure actuelle, non.
Comme je l'ai mentionné dans Est-il possible d'inclure un fichier dans votre .gitconfig
, vous avez déjà 3 gitconfig séparé pour vous d'obtenir vos paramètres organisés:
$GIT_DIR/config
fichier de configuration spécifique du référentiel. (Le nom de fichier est bien sûr par rapport à la racine du référentiel, pas le répertoire de travail.)
~/.gitconfig
fichier de configuration spécifique à l'utilisateur. Également appelé fichier de configuration "globale".
$(prefix)/etc/gitconfig
fichier de configuration système à l'échelle
Config inclusion du fichier a été discuté en mai 2010, et un premier patch a été écrit par Ævar Arnfjord Bjarmason, mais je ne vois pas ce patch dans l'un des derniers « ce qui mijote dans Git ».