git config --global写到哪里?

时间:2010-01-22 00:34:56

标签: git config

使用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上

18 个答案:

答案 0 :(得分:1066)

2016年更新:使用git 2。8(2016年3月),您只需使用:

git config --list --show-origin

您将看到哪个配置设置在哪里 请参阅“Where do the settings in my Git configuration come from?

由于Steven Vascellaro指出in the comments

  

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

(就像最新的PortableGit-2.14.2-64-bit.7z.exe一样,可以在任何你想要的地方解压缩)


原始答案(2010)

来自the docs

  

- 全球

     

对于编写选项:写入全局~/.gitconfig文件而不是存储库.git/config

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

HOME="$HOMEDRIVE$HOMEPATH"

意义:

C:\Users\MyLogin

(在Windows 7上)

这意味着该文件位于Windows 7中Git的 C:\Users\MyLogin\.gitconfig

答案 1 :(得分:112)

我也在我的Windows机器上寻找全局.gitconfig并使用git找到了这个巧妙的技巧。

执行:git config --global -e然后,如果运气好的话,您将获得一个加载了全局.gitconfig文件的文本编辑器。只需从那里查找文件夹(或尝试另存为...),等等! : - )

答案 2 :(得分:72)

在* nixes上,它位于~/.gitconfig。您家中有相应的文件吗?

在Windows上,您可以输入git bash

notepad ~/.gitconfig

答案 3 :(得分:42)

msysgit的路径是:

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

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

答案 4 :(得分:34)

除非已定义HOME环境变量,否则在Windows MsysGit上使用HOMEDRIVE和HOMEPATH环境变量派生全局位置。详情请参阅“个人资料”脚本。

在我的公司环境中,HOMEDRIVE是H:,然后映射到网络URL \\ share \ $。然后将整个地图映射为“我的文档”,这不是其他人所期望的。 URL重新映射的驱动器可能还有一些问题。无论如何,我甚至都没有调整HOMEDRIVE或HOMEPATH变量。

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

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

答案 5 :(得分:12)

如果您在Windows PC上使用TortoiseGit,您可以使用:

Settings / Git / Config / Edit global .gitconfig

打开全局.gitignore文件。

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

答案 6 :(得分:10)

我在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的那个。

答案 7 :(得分:7)

注意(对于* nix平台)可能有用:某些类型的全局git配置/信息存储在/usr/share/git-core/中,例如git自动完成脚本和以下(默认)挂钩:

  • applypatch-msg
  • 更新后
  • 预提交
  • 准备提交-MSG
  • 提交-MSG
  • 预applypatch
  • 预变基
  • 更新

这些命令中的每一个都可以包含它们自己的一组命令,在它们各自的文件名描述的时间执行。

答案 8 :(得分:5)

我的全球.gitconfig也遇到了问题 这是有人也有这种奇怪的情况

git说:

  

致命:读取配置文件时发生未知错误

现在我修好了。问题是此文件夹中的第二个.gitconfig

  

C:\ Users \用户myUser.config \ GIT中\配置

我不知道它来自哪里......但是现在一切都像魅力一样。

答案 9 :(得分:5)

您可以使用以下命令找到它

git config --list --show-origin

enter image description here

答案 10 :(得分:4)

我正在运行Windows 7,并按照GitHub上的说明(一年或两年后)使用git作为设置。我会想到一个相当常见的用例。上面的答案都没有对我有所帮助,经过多次挫折之后,我终于发现了我的真实&#39; gitconfig文件位于以下目录中;

C:\用户\比尔\应用程序数据\本地\ GitHub的\ PortableGit_054f2e797ebafd44a30203088cd 3d58663c627ef \等

显然,在PortableGit_是唯一的GUID或类似名称后,用你的用户名替换后缀,可能是后缀。

答案 11 :(得分:4)

什么时候创建了全局.gitconfig文件?

首先,git在安装过程中不会自动创建全局配置文件(.gitconfig)。在第一次写入文件之前,不会创建该文件。 如果您从未设置过系统变量,它将不在您的文件系统上。我猜这可能是问题的根源。

要求Git创建它的一种方法是请求编辑。这样做会强制创建文件。

git config --global --edit

如果在发出此命令时监视用户的主文件夹,您将看到.gitconfig文件神奇地出现。

git配置存储在哪里?

以下是与三个Git作用域关联的配置文件的名称和位置的快速概述,即 system global local

  • System Git配置:名为 gitconfig 的文件位于 -git-install-location- / ming&lt; 32&gt; / etc
  • Global Git configuraiton:名为 .gitconfig 的文件位于用户的主文件夹(C:\ Users \ git user)
  • 本地Git配置:本地仓库的 .git文件夹中名为 config 的文件

当然,眼见为实,所以这里是一张显示每个文件和每个位置的图像。我从一篇关于这个主题的文章中提取了图像。

Windows Git configuration file locations (TheServerSide.com)

Location of Git configuration files

答案 12 :(得分:2)

我认为发布此报价很重要:

  

Windows的Git支持四个配置级别。最低级别是机器特定的配置设置,称为“便携式”,位于“%ProgramData%\ Git \ config”中。一个优先级是安装专用的配置设置,称为“系统”,位于“ \ mingw64 \ etc \ gitconfig”。这两个配置文件通常都需要提升的特权才能进行修改。

     

从使用特定的值(称为“全局”配置)开始,可以在“%UserProfile%.gitconfig”找到该文件,然后找到“用户可编辑”的配置文件。最高优先级的配置设置位于“本地”配置中,通常可以在“ .git \ config”中找到。

     

它看到链接的博客中的建议是修改“系统”或“安装”的特定配置设置,这很好,但是用户应该期望Git的其他安装不会吸收所述设置。如果需要计算机范围的设置,请使用“便携式”配置文件,否则请选择“全局”或“本地”配置文件。

     

希望人们发现此信息有用。

source

答案 13 :(得分:1)

卸载Msysgit并安装Cygwin + Git。然后全局'.gitconfig'将在这里:C:\ cygwin(64)\ home \ [userName] \ .gitconfig。

现在您不必担心其他程序可能使用的环境变量。例如,我的环境变量指向我工作Windows域环境中的映射驱动器。我不希望我的全局.gitconfig位于我的“home”映射驱动器上。我也不知道可能依赖于那个windows环境变量的其他应用程序会发生什么。由于某种原因,操作部门可能需要将该环境变量设置为映射驱动器。

如果您使用此方法指定全局'.gitconfig'的特定路径,则您不必担心Mysysgit会覆盖您的'配置文件'配置设置。

一般来说,保存自己并在Windows中使用cygwin bash shell并且更快乐

答案 14 :(得分:1)

我有类似的问题;问题是.gitconfig文件位于

C:\Users\MyLogin\.gitconfig\

(在Windows 7上)

换句话说,该文件位于 C:\Users\MyLogin\.gitconfig\.gitconfig ,而不是 C:\Users\MyLogin\.gitconfig (这是Git寻找文件的位置) )。

答案 15 :(得分:1)

@MatrixFrog在其comment中指出,如果目标是编辑配置,则可能要运行:

git config --global --edit

此命令将在所选的编辑器中打开配置文件(在本例中为--global),并等待文件关闭(就像在git rebase -i中一样)。

答案 16 :(得分:1)

.gitconfig文件位置

macOS测试正常

全局

# global config
$ cd ~/.gitconfig

# view global config
$ git config --global -l

本地

# local config
$ cd .git/config

# view local config
$ git config -l


可能对您有好处:VimVSCode用于编辑git config


# open config with Vim

# global config
$ vim ~/.gitconfig

# local config
$ vim .git/config


# open config with VSCode

# global config
$ code ~/.gitconfig

# local config
$ code .git/config

答案 17 :(得分:0)

我已将我的Git安装在C:\Users\_myuserfolder_\AppData\Local\Programs\Git