如何在配置文件为"$ XDG_CONFIG_HOME/git/config"时设置Git配置选项?

Tim*_*ske 4 git config

使用Git,Fedora Linux版本1.9.3,版本20,我正在查询用户的名字,如下所示:

git config user.name
# Foo Bar
Run Code Online (Sandbox Code Playgroud)

但当我尝试改变它时:

git config user.name 'Bar Foo'
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

# error: could not lock config file .git/config: No such file or directory
Run Code Online (Sandbox Code Playgroud)

根据"XDG基本目录规范"(http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html)和我放置的git-config(1)联机帮助页的"FILES"部分我的Git配置文件下"$XDG_CONFIG_HOME/git/config".

请注意,"XDG_CONFIG_HOME变量设置为,"$HOME/.config"并且GIT_CONFIG在我的环境中未设置变量.

据我所知,(1)联机帮助页状态的混帐配置的"文件"部分:"如果没有设置$ XDG_CONFIG_HOME或空,$ HOME /的.config /混帐/配置将用于"

但随后的Git应该忽略的"$XDG_CONFIG_HOME/git/config"一贯文件,即在阅读写作.

我错过了什么吗?

tor*_*rek 8

您正尝试在本地(in .git/config)而不是全局(在主目录中的XDG配置中)设置它.

发生此错误是因为您实际上并不在存储库中.这是一个虚假的错误消息,但我可以重复它:

$ cd /someplace/with/no/repo; git config user.name boo
error: could not lock config file .git/config: No such file or directory
Run Code Online (Sandbox Code Playgroud)

正如Biffen在评论中提到的,你需要添加--global.

正如VonC指出的那样,误导性的错误信息被改为git版本2.8的合理内容.