web-dev-qa-db-fra.com

Où est-ce que git config --global est écrit?

Lorsque vous utilisez git config --global pour configurer les éléments, dans quel fichier va-t-il écrire?

Exemple:

git config --global core.editor "blah"

Je ne le trouve pas à ces endroits:

C:\Program Files\Git\etc\gitconfig

C:\myapp\.git\config

Je n'ai pas défini d'ENV?

Ma version de Git: 1.6.5.1.1367.gcd48 - sous Windows 7

929
Ian Vaughan

Mise à jour 2016: avec git 2.8 (mars 2016), vous pouvez simplement utiliser:

_git config --list --show-Origin
_

Vous verrez quelle configuration est définie où.
Voir " D'où proviennent les paramètres de ma configuration Git? "

Comme Steven Vascellaro indique dans les commentaires ,

cela fonctionnera avec des emplacements d'installation non standard. (c'est-à-dire Git Portable )

(comme le dernier PortableGit-2.14.2-64-bit.7z.exe , qui peut être décompressé où vous voulez)


Réponse originale (2010)

De les docs :

--global

Pour les options d'écriture: écrivez dans le fichier global _~/.gitconfig_ plutôt que dans le référentiel _.git/config_.

Puisque vous utilisez Git pour Windows , il est difficile de savoir à quel emplacement cela correspond. Mais si vous regardez etc/profile (dans _C:\Program Files\Git_), vous verrez:

_HOME="$HOMEDRIVE$HOMEPATH"
_

Sens:

_C:\Users\MyLogin
_

(sous Windows 7)

Cela signifie que le fichier est au format C:\Users\MyLogin\.gitconfig pour Git sous Windows 7.

1113
VonC

Je recherchais également le .gitconfig global sur mon ordinateur Windows et j'ai découvert cette astuce en utilisant git.

Faites un: git config --global -e puis, si vous êtes chanceux, vous aurez un éditeur de texte chargé avec votre fichier global .gitconfig. Il suffit de chercher le dossier à partir de là (ou d'essayer une sauvegarde sous ...), et voilà! :-)

116
MAD

Sur * nixes, c'est dans ~/.gitconfig. Y a-t-il un fichier correspondant chez vous?

Sous Windows, vous pouvez taper git bash

notepad ~/.gitconfig
72
Ben

Les chemins pour msysgit sont:

Windows XP -C:\Documents and Settings\<user_name>\.gitconfig

Windows Vista +C:\Users\<user_name>\.gitconfig

42
hash

L'emplacement global est dérivé, sous Windows MsysGit, à l'aide des variables d'environnement HOMEDRIVE et HOMEPATH, sauf si vous avez défini une variable d'environnement HOME. Le est détaillé dans le script 'profile'.

Dans mon environnement d'entreprise, HOMEDRIVE est H :, qui est ensuite mappé sur une URL de réseau \\ share\$. L'ensemble est alors mis en correspondance avec "Mes documents", ce qui n'est pas ce à quoi d'autres pourraient s'attendre. Il peut y avoir eu d'autres problèmes avec le lecteur pour le remappage d'URL. De toute façon, je ne parviens même pas à ajuster les variables HOMEDRIVE ou HOMEPATH.

Dans mon cas, j'ai défini une variable d'environnement HOME personnelle et l'ai dirigée vers D:\git\GitHOME et ai copié tous ces fichiers GIT (sans extension et sans extension) dans le répertoire GitHOME pour les conserver en sécurité.

Les variables d'environnement Windows peuvent être définies via l'onglet Avancé de la boîte de dialogue des propriétés du Poste de travail.

34
Philip Oakley

Si vous utilisez TortoiseGit sur un PC Windows, vous pouvez utiliser:

Settings / Git / Config / Edit global .gitconfig

pour ouvrir le fichier global .gitignore.

Mais si vous utilisez votre PC Windows (7) dans un domaine, votre répertoire de profil est peut-être un partage réseau (monté en tant que lecteur). Dans ce cas, TortoiseGit (au moins: 1.6.5.0) vous indique le mauvais répertoire (sur c: ...). Voir TortoiseGit fermé numéro 922 pour plus d'informations. Ou utilisez% HOMEDRIVE %% HOMEPATH% pour ouvrir le répertoire contenant le fichier .gitignore.

12
DanielaWaranie

J'utilise SmartGit avec msysgit sur Windows 8.1 et j'ai remarqué qu'il peut exister trois emplacements différents pour le fichier gitconfig:

%USERPROFILE%\.gitconfig
C:\Program Files (x86)\Git\etc\gitconfig
C:\Program Files (x86)\SmartGitHg\git\etc\gitconfig

Mais celui qui est utilisé est celui de %USERPROFILE%\.gitconfig.

10
Benny Neugebauer

Il peut être utile de noter (pour les plates-formes * nix): certains types de configuration/d’informations git globales sont stockés dans /usr/share/git-core/, tels que les scripts git d’auto-complétion et les hooks suivants (par défaut):

  • applypatch-msg
  • post-mise à jour
  • pré-commit
  • préparer-commettre-msg
  • commit-msg
  • pré-application
  • pré-rebasement
  • mise à jour

Chacun de ceux-ci peut contenir son propre ensemble de commandes à exécuter, à l'heure décrite par leurs noms de fichiers respectifs.

6
samstav

Vous pouvez le trouver en utilisant la commande suivante

git config --list --show-Origin

enter image description here

5
Skitty

J'ai aussi eu un problème avec mon global .gitconfig C'est pour le cas où quelqu'un a aussi cet étrange

git a dit:

fatal: une erreur inconnue s'est produite lors de la lecture des fichiers de configuration

Maintenant je l'ai réparé. Le problème était un deuxième .gitconfig dans ce dossier:

c:\Users\myUser.config\git\config

Je ne sais pas d'où ça vient ... Mais maintenant, tout fonctionne à nouveau comme un charme.

5
Mane

Quand le fichier global .gitconfig est-il créé?

Tout d'abord, git ne crée pas automatiquement le fichier de configuration global (.gitconfig) lors de son installation. Le fichier n’est créé que lorsqu’il est écrit pour la première fois. Si vous n'avez jamais défini de variable système, cela ne sera pas dans votre système de fichiers. Je suppose que cela pourrait être la source du problème.

Une façon de demander à Git de le créer est de demander une modification. Cela forcera la création du fichier.

git config --global --edit

Si vous surveillez le dossier de base de l'utilisateur lorsque vous exécutez cette commande, le fichier .gitconfig apparaîtra comme par magie.

Où la configuration de git est-elle stockée?

Voici un bref aperçu du nom et de l'emplacement des fichiers de configuration associés aux trois portées Git, à savoir système , global et local :

  • Configuration Git système: fichier nommé gitconfig situé dans - emplacement-d'installation-git-/ming <32>/etc
  • Configuration globale de Git: fichier nommé . Gitconfig situé dans le dossier de base de l'utilisateur (utilisateur C:\Users\git)
  • Configuration de Git local: fichier nommé config dans le dossier .git du repo locale

Bien sûr, voir c'est croire, alors voici une image montrant chaque fichier et chaque emplacement. J'ai tiré l'image d'un article que j'ai écrit sur le sujet.

emplacements du fichier de configuration Windows Git (TheServerSide.com)

Location of Git configuration files

5
Cameron McKenzie

J'utilise Windows 7 et j'utilise git pour la configuration en suivant les instructions sur GitHub (un an ou deux en arrière). Un cas d'utilisation assez commun j'aurais pensé. Aucune des réponses ci-dessus ne m'a aidé, et après beaucoup de frustration, j'ai finalement trouvé mon "vrai" fichier gitconfig dans le répertoire suivant;

C:\Utilisateurs\Bill\AppData\Local\GitHub\PortableGit_054f2e797ebafd44a30203088cd 3d58663c627ef\etc

Évidemment, substituez votre nom d'utilisateur et probablement le suffixe après PortableGit_ est un unique GUID ou similaire.

4
Bill Forster

Je pense qu'il est important de poster cette citation:

Git pour Windows prend en charge quatre niveaux de configuration. Au niveau le plus bas, se trouvent les paramètres de configuration spécifiques à la machine, appelés "portables", et vivent sous "% ProgramData%\Git\config". Un niveau de priorité correspond aux paramètres de configuration spécifiques à l’installation, appelés "système", qui résident dans "\ mingw64\etc\gitconfig". Ces deux fichiers de configuration nécessitent généralement des privilèges élevés pour être modifiés.

En commençant par les valeurs spécifiques à l'utilisation connues sous le nom de configuration "globale", disponibles dans "% UserProfile% .gitconfig", nous trouvons les fichiers de configuration "modifiables par l'utilisateur". Les paramètres de configuration avec la priorité la plus élevée se trouvent dans la configuration "locale", qui se trouve généralement dans ".git\config".

Il est recommandé de modifier les paramètres de configuration spécifiques au "système" ou à "l'installation", ce qui est correct, mais les utilisateurs doivent s'attendre à ce que d'autres installations de Git n'absorbent pas ces paramètres. Si vous souhaitez configurer l'ensemble de la machine, utilisez le fichier de configuration "portable", sinon choisissez les fichiers de configuration "globaux" ou "locaux".

Espérons que les gens trouveront cette information utile.

source

3
Badr Elmers

Comme @MatrixFrog l'a souligné dans son commentaire , si l'objectif est d'éditer la configuration, vous pouvez exécuter:

git config --global --edit

Cette commande ouvre le fichier de configuration (dans ce cas, le fichier --global dans l'éditeur de votre choix et attend que le fichier soit fermé (comme lors de git rebase -i).

2

Désinstallez Msysgit et installez Cygwin + Git. Alors 'gitconfig' global sera là: C:\cygwin (64)\home\[nomutilisateur] \. Gitconfig.

Maintenant, vous n'avez plus à vous soucier d'une variable d'environnement qui peut être utilisée par d'autres programmes. Par exemple, ma variable d'environnement m'a renvoyé vers un lecteur mappé dans mon environnement de domaine Windows. Je ne veux pas que mon .gitconfig global soit assis sur mon lecteur mappé "à la maison". Je ne sais pas non plus ce qui pourrait arriver à d'autres applications pouvant dépendre de cette variable d'environnement Windows. La division des opérations peut avoir besoin de cette variable d'environnement définie sur le lecteur mappé pour une raison.

De plus, vous n'avez pas à craindre que Mysysgit écrase vos paramètres de configuration de "profil" si vous spécifiez un chemin spécifique vers ".gitconfig" global, à l'aide de cette méthode.

En général, épargnez-vous et utilisez cygwin bash Shell dans Windows et soyez plus heureux

1
meffect

J'ai eu un problème similaire; le problème était que le fichier _.gitconfig_ était situé dans

_C:\Users\MyLogin\.gitconfig\
_

(sous Windows 7)

En d'autres termes, le fichier se trouvait dans C:\Users\MyLogin\.gitconfig\.gitconfig, au lieu de C:\Users\MyLogin\.gitconfig (c'est là que Git cherchait les fichiers).

1
rolandog

J'avais installé mon Git dans: C:\Users\_myuserfolder_\AppData\Local\Programs\Git

0
KikeSP