Notez que vous aurez bientôt (Q3 / Q4 2015) avec git 2.6 l'option --name-only, de ne lister que les clés de configuration, sans leurs valeurs. Voir ma réponse ci
Merci, j'ai voté pour vous deux. Je voulais savoir la git config --listcommande parce que je peux regarder la config efficace dans un référentiel et je peux varier locale, la configuration globale et le système avec le paramètre approprié ( --global, --local, --system). J'accepterai votre réponse dès que je pourrai parce que vous étiez quelques secondes plus rapide :)
wullxz
2
Attention, il existe de nombreuses sources potentielles pour la configuration de git. L'examen du fichier ne donne qu'une partie. La réponse de @ linquize est en fait correcte.
vonbrand
2
@vonbrand: --list est équivalent à -l.
Cameron Skinner
9
Les raccourcis (comme -l) sont utiles lorsque vous devenez un utilisateur avancé et utilisez la fonctionnalité assez souvent, pour profiter réellement de la saisie de moins de caractères. Je trouve plus facile de trouver et de mémoriser l' --listoption longue . Pour les raccourcis moins évidents, je dois souvent vérifier ce qu'ils représentent, donc je préfère les noms longs. Ils sont encore plus faciles, avec l'achèvement de la commande, lorsque vous n'avez pas vraiment besoin de taper tous les caractères, mais que vous voyez toujours le nom complet de l'option.
Krzysztof Jabłoński
1
Et si git config --listrien ne s'imprime?
Matej J
247
Le plus court,
git config -l
affiche toutes les valeurs héritées de: système, global et local
Est-ce que cela diffère de git config --list , ou est-ce juste un moyen plus court de l'écrire?
Magnilex
8
@Magnilex c'est juste un moyen plus court de l'écrire
LemenDrop
3
Les fichiers de configuration peuvent ne pas toujours afficher toutes les configurations héritées, mais git config -lafficheront tout. M'a sauvé car git for windows définit autocrlfl'installation, et ce n'est dans aucun fichier de configuration que je puisse trouver.
geneorama
oui, il y a aussi le fichier C: \ ProgramData \ Git \ config - je suppose que c'est un fichier de configuration git global ou système
Alex
129
Comment modifier ma configuration globale de Git?
Réponse courte: git config --edit --global
Pour comprendre la configuration de Git, vous devez savoir que:
Les variables de configuration Git peuvent être stockées à trois niveaux différents. Chaque niveau remplace les valeurs du niveau précédent.
1. Niveau système (appliqué à chaque utilisateur du système et à tous ses référentiels)
pour voir, git config --list --system(peut-être besoin sudo)
mettre en place, git config --system color.ui true
pour modifier le fichier de configuration du système, git config --edit --system
2. Niveau global (valeurs spécifiques à vous, l'utilisateur).
regarder, git config --list --global
mettre en place, git config --global user.name xyz
pour modifier le fichier de configuration global, git config --edit --global
3. Niveau du référentiel (spécifique à ce référentiel unique)
regarder, git config --list --local
à régler, git config --local core.ignorecase true( --localfacultatif)
pour modifier le fichier de configuration du référentiel, git config --edit --local( --localfacultatif)
Comment afficher tous les paramètres?
Run git config --list, montrant le système , global , et (si) à l' intérieur d' un dépôt locaux configs
Exécuter git config --list --show-origin, affiche également le fichier d'origine de chaque élément de configuration
Comment lire une configuration particulière?
Courez git config user.namepour obtenir user.name, par exemple.
Vous pouvez également spécifier des options --system, --global, --localà lire cette valeur à un niveau particulier.
Avez-vous l'intention ~/.gitconfigou l'un des autres fichiers mentionnés dans la section FICHIERS de git help config?
chwarr
1
@chwarr - Désolé, je ne comprends pas. Avais-je "l'intention"?
Tour
1
Je pense que vous vouliez dire "je n'ouvre que d'habitude ~/.gitconfig.", Car git ne cherche pas .gitconfigdans le répertoire courant, où que vous soyez. ( .gitconfiget ~/.gitconfignommez différents fichiers [ généralement ].) Les autres fichiers mentionnés dans git help configont des noms de fichiers différents, d'où l'hypothèse.
chwarr
32
Vous pouvez également appeler git config -epour ouvrir directement le fichier de configuration dans votre éditeur. Le fichier de configuration Git est beaucoup plus lisible que la -lsortie, donc j'ai toujours tendance à utiliser l' -eindicateur.
Donc, pour résumer:
git config -l # List Git configuration settings (same as --list)
git config -e # Opens Git configuration in the default editor (same as --edit)
Sans paramètres, il interagit avec le local .git/config.
Avec --globalelle interagit avec ~/.gitconfig.
Et avec --systemelle interagit avec $(prefix)/etc/gitconfig.
(Je n'ai pas vraiment pu trouver ce que cela $(prefix)signifie, mais il semble que ce soit par défaut $HOME.)
config: ajouter '--name-only option ' pour répertorier uniquement les noms de variables
' git config' ne peut afficher que des valeurs ou des paires nom-valeur, donc si un script shell a besoin des noms des variables de configuration définies, il doit exécuter ' git config --list' ou ' --get-regexp' et analyser la sortie pour séparer les noms des variables de configuration de leurs valeurs.
Cependant, une telle analyse ne peut pas gérer les valeurs multilignes.
Bien que ' git config' puisse produire une sortie terminée par un caractère nul pour une analyse sécurisée par les sauts de ligne, cela n'est d'aucune utilité dans un tel cas, car les shells ne peuvent pas gérer les caractères nuls.
Même notre propre script de complétion bash souffre de ces problèmes.
Aidez le script d'achèvement et les scripts shell en général, en introduisant l' --name-onlyoption ' ' pour modifier la sortie de ' --list' et ' --get-regexp' pour répertorier uniquement les noms des variables de configuration, afin qu'ils n'aient pas à effectuer un post-traitement sujet aux erreurs pour séparer les noms de variables de leurs valeurs.
Par défaut, git configécrit au niveau local si aucune option de configuration n'est transmise. Les valeurs de configuration locales sont stockées dans un fichier qui se trouve dans le répertoire .git du référentiel:.git/config
La configuration au niveau global est spécifique à l'utilisateur, ce qui signifie qu'elle est appliquée à un utilisateur du système d'exploitation. Les valeurs de configuration globales sont stockées dans un fichier situé dans le répertoire personnel d'un utilisateur. ~/.gitconfigsur les systèmes Unix et C:\Users\<username>\.gitconfigsur Windows.
La configuration au niveau du système est appliquée à l'ensemble d'une machine. Cela couvre tous les utilisateurs d'un système d'exploitation et tous les référentiels. Le fichier de configuration au niveau du système réside dans un gitconfigfichier hors du chemin racine du système. $ (préfixe) / etc / gitconfig sur les systèmes Linux. Sous Windows, ce fichier se trouve dans C:\ProgramData\Git\config.
Votre option consiste donc à rechercher ce .gitconfigfichier global et à le modifier.
Ou vous pouvez utiliser git config --global --list.
Si vous voulez simplement lister une partie de la configuration Git, telle que alias , core , remote , etc., vous pouvez simplement diriger le résultat via grep. Quelque chose comme:
La commande git config est une fonction pratique qui est utilisée pour définir les valeurs de configuration Git au niveau d'un projet global ou local. Ces niveaux de configuration correspondent aux fichiers texte .gitconfig. En savoir plus ici: atlassian.com/git/tutorials/setting-up-a-repository/git-config
infomasud
Très bien, pouvez-vous ajouter cela à votre réponse?
system rebase.autosquash=true
system credential.helper=helper-selector
global core.editor='code.cmd' --wait -n
global merge.tool=kdiff3
local core.symlinks=false
local core.ignorecase=true
Il peut être combiné avec
--localpour la configuration du projet, --globalpour la configuration de l'utilisateur , pour la configuration --systemde tous les utilisateurs
--show-origin pour afficher l'emplacement exact du fichier de configuration
--name-only
, de ne lister que les clés de configuration, sans leurs valeurs. Voir ma réponse ci$ git config --list
Vérification de vos paramètresgit config --global --list
comme expliqué plus en profondeur iciRéponses:
Vous pouvez utiliser:
ou regardez votre
~/.gitconfig
dossier. La configuration locale sera dans le.git/config
fichier de votre référentiel .Utilisation:
pour voir où ce paramètre est défini (global, utilisateur, repo, etc ...)
la source
git config --list
commande parce que je peux regarder la config efficace dans un référentiel et je peux varier locale, la configuration globale et le système avec le paramètre approprié (--global
,--local
,--system
). J'accepterai votre réponse dès que je pourrai parce que vous étiez quelques secondes plus rapide :)-l
) sont utiles lorsque vous devenez un utilisateur avancé et utilisez la fonctionnalité assez souvent, pour profiter réellement de la saisie de moins de caractères. Je trouve plus facile de trouver et de mémoriser l'--list
option longue . Pour les raccourcis moins évidents, je dois souvent vérifier ce qu'ils représentent, donc je préfère les noms longs. Ils sont encore plus faciles, avec l'achèvement de la commande, lorsque vous n'avez pas vraiment besoin de taper tous les caractères, mais que vous voyez toujours le nom complet de l'option.git config --list
rien ne s'imprime?Le plus court,
affiche toutes les valeurs héritées de: système, global et local
la source
git config -l
afficheront tout. M'a sauvé car git for windows définitautocrlf
l'installation, et ce n'est dans aucun fichier de configuration que je puisse trouver.Réponse courte:
git config --edit --global
Pour comprendre la configuration de Git, vous devez savoir que:
1. Niveau système (appliqué à chaque utilisateur du système et à tous ses référentiels)
git config --list --system
(peut-être besoinsudo
)git config --system color.ui true
git config --edit --system
2. Niveau global (valeurs spécifiques à vous, l'utilisateur).
git config --list --global
git config --global user.name xyz
git config --edit --global
3. Niveau du référentiel (spécifique à ce référentiel unique)
git config --list --local
git config --local core.ignorecase true
(--local
facultatif)git config --edit --local
(--local
facultatif)git config --list
, montrant le système , global , et (si) à l' intérieur d' un dépôt locaux configsgit config --list --show-origin
, affiche également le fichier d'origine de chaque élément de configurationgit config user.name
pour obteniruser.name
, par exemple.--system
,--global
,--local
à lire cette valeur à un niveau particulier.Référence: 1.6 Mise en route - Première configuration de Git
la source
git config --list
montrer tout global, système et local? j'ai besoin d'affirmation :)git config --list --show-origin
pour découvrir l'origine de chaque élément de configuration.est une façon de procéder. En général, je m'ouvre simplement
.gitconfig
.la source
~/.gitconfig
ou l'un des autres fichiers mentionnés dans la section FICHIERS degit help config
?~/.gitconfig
.", Car git ne cherche pas.gitconfig
dans le répertoire courant, où que vous soyez. (.gitconfig
et~/.gitconfig
nommez différents fichiers [ généralement ].) Les autres fichiers mentionnés dansgit help config
ont des noms de fichiers différents, d'où l'hypothèse.Vous pouvez également appeler
git config -e
pour ouvrir directement le fichier de configuration dans votre éditeur. Le fichier de configuration Git est beaucoup plus lisible que la-l
sortie, donc j'ai toujours tendance à utiliser l'-e
indicateur.Donc, pour résumer:
.git/config
.--global
elle interagit avec~/.gitconfig
.--system
elle interagit avec$(prefix)/etc/gitconfig
.(Je n'ai pas vraiment pu trouver ce que cela
$(prefix)
signifie, mais il semble que ce soit par défaut$HOME
.)la source
Vous pouvez également utiliser
cat ~/.gitconfig
.la source
Git 2.6 (Sept / Oct 2015) ajoutera l'option
--name-only
pour simplifier la sortie d'ungit config -l
:Voir commit a92330d , commit f225987 , commit 9f1429d (20 août 2015) par Jeff King (
peff
) .Voir commit ebca2d4 (20 août 2015), et commit 905f203 , commit 578625f (10 août 2015) par SZEDER Gábor (
szeder
) .(Fusionné par Junio C Hamano -
gitster
- dans commit fc9dfda , 31 août 2015)la source
Une chose importante à propos de
git config
:git config
a--local
,--global
et les--system
niveaux et les fichiers correspondants.Vous pouvez donc utiliser
git config --local
,git config --global
etgit config --system
.Par défaut,
git config
écrit au niveau local si aucune option de configuration n'est transmise. Les valeurs de configuration locales sont stockées dans un fichier qui se trouve dans le répertoire .git du référentiel:.git/config
La configuration au niveau global est spécifique à l'utilisateur, ce qui signifie qu'elle est appliquée à un utilisateur du système d'exploitation. Les valeurs de configuration globales sont stockées dans un fichier situé dans le répertoire personnel d'un utilisateur.
~/.gitconfig
sur les systèmes Unix etC:\Users\<username>\.gitconfig
sur Windows.La configuration au niveau du système est appliquée à l'ensemble d'une machine. Cela couvre tous les utilisateurs d'un système d'exploitation et tous les référentiels. Le fichier de configuration au niveau du système réside dans un
gitconfig
fichier hors du chemin racine du système. $ (préfixe) / etc / gitconfig sur les systèmes Linux. Sous Windows, ce fichier se trouve dansC:\ProgramData\Git\config
.Votre option consiste donc à rechercher ce
.gitconfig
fichier global et à le modifier.Ou vous pouvez utiliser
git config --global --list
.C'est exactement la ligne dont vous avez besoin.
la source
Si vous voulez simplement lister une partie de la configuration Git, telle que alias , core , remote , etc., vous pouvez simplement diriger le résultat via grep. Quelque chose comme:
la source
Sur les systèmes Linux, vous pouvez afficher / modifier un fichier de configuration en
Assurez-vous que vous êtes dans le dossier Git init.
Si vous voulez travailler avec
--global config
, c'eston / home / userName
Cela devrait aider à l'édition: https://help.github.com/categories/setup/
la source
Pour trouver toutes les configurations, il vous suffit d'écrire cette commande:
Dans mon local, j'exécute cette commande.
la source
Depuis Git 2.26.0 , vous pouvez utiliser l'
--show-scope
option:Exemple de sortie:
Il peut être combiné avec
--local
pour la configuration du projet,--global
pour la configuration de l'utilisateur , pour la configuration--system
de tous les utilisateurs--show-origin
pour afficher l'emplacement exact du fichier de configurationla source