当使用git config——global来设置时,它会写入哪个文件?

例子:

git config --global core.editor "blah"

我在这些地方都找不到:

C:\Program Files\Git\etc\gitconfig

C:\myapp\.git\config

我没有设置ENV?

我的Git版本:1.6.5.1.1367。gcd48 - 在Windows 7上


当前回答

我在Windows 8.1上使用SmartGit和msysgit,并注意到gitconfig文件可以有三个不同的位置:

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

但是使用的是来自%USERPROFILE%\.gitconfig的。

其他回答

我在Windows 8.1上使用SmartGit和msysgit,并注意到gitconfig文件可以有三个不同的位置:

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

但是使用的是来自%USERPROFILE%\.gitconfig的。

我正在运行Windows 7,并按照GitHub上的说明(一两年前)使用git作为安装。我认为这是一个相当常见的用例。上面的答案对我没有帮助,在经历了很多挫折后,我最终在以下目录中找到了我的“真正的”gitconfig文件;

C:\Users\Bill\AppData\Local\GitHub\PortableGit_054f2e797ebafd44a30203088cd 3D58663C627EF\etc

显然要替换用户名,PortableGit_后面的后缀是唯一的GUID或类似的。

如果你在windows电脑上使用TortoiseGit,你可以使用:

Settings / Git / Config / Edit global .gitconfig

打开全局文件。gitignore。

但是如果你在域中使用你的Windows (7) PC,你的配置文件目录可能是一个网络共享(挂载为驱动器)。在这种情况下,TortoiseGit(至少:1.6.5.0)将您指向错误的目录(在c:…)。有关更多信息,请参阅已关闭的TortoiseGit issue 922。或者使用%HOMEDRIVE%%HOMEPATH%打开包含.gitignore文件的目录。

全局位置是在Windows MsysGit上使用HOMEDRIVE和HOMEPATH环境变量派生的,除非您已经定义了HOME环境变量。在'profile'脚本中详细描述。

在我的公司环境中,HOMEDRIVE是H:,然后映射到一个网络URL \\share\$。然后,所有的文件都被映射为“我的文件”,这不是其他人所期望的。URL重映射的驱动器可能存在进一步的问题。我甚至无法调整HOMEDRIVE或HOMEPATH变量。

在我的情况下,我已经定义了一个个人HOME环境变量,并将其指向D:\git\GitHOME,并将所有这些git文件(没有和扩展名)复制到GitHOME目录以安全保存。

windows环境变量可以通过“我的电脑”属性对话框中的“高级”选项卡设置。

2016年更新:使用git 2.8(2016年3月),你可以简单地使用:

git config --list --show-origin

在Git 2.26 (Q1 2020)中,你可以添加——show-scope选项

git config --list --show-origin --show-scope

您将看到在哪里设置了哪个配置。 参见“我的Git配置中的设置来自哪里?”

正如史蒂夫西亚克在评论中指出的那样,

它将适用于非标准安装位置。(即Git Portable)

(比如最新的PortableGit-2.14.2-64-bit.7z.exe,你可以在任何地方解压)


原答案(2010)

从文档中可以看出:

——全球 对于写入选项:write to global ~/。Gitconfig文件,而不是仓库的。git/config。

由于您使用的是面向Windows的Git,因此可能不清楚它对应的位置是什么。但是如果你查看etc/profile(在C:\Program Files\ Git中),你会看到:

HOME="$HOMEDRIVE$HOMEPATH"

意义:

C:\Users\MyLogin

(适用于windows7)

这意味着文件在c:\ users \ mylogin \。gitconfig用于Windows 7下的Git。