有办法更改git的默认配置文件吗?

dfty9e19  于 2023-03-28  发布在  Git
关注(0)|答案(1)|浏览(134)

我看到git允许我选择任何我想要的文件作为全局排除文件,但它看不到你可以更改默认的全局配置文件?
我错过了还是不可能?有没有变通办法?

h5qlskok

h5qlskok1#

Git有两种全局配置文件,一种是~/.gitconfig,另一种是$XDG_CONFIG_HOME/git/config
~/.gitconfig不存在时,$XDG_CONFIG_HOME/git/config作为全局配置文件。
我们可以在不同的路径下创建多个git/config,例如/e/git/config/f/git/config

mkdir -p /e/git
touch /e/git/config
mkdir -p /f/git
touch /f/git/config

当我们想使用其中一个作为全局配置文件时,首先我们重命名为~/.gitconfig

mv ~/.gitconfig ~/.gitconfig.bak

然后使用export XDG_CONFIG_HOME=XDG_CONFIG_HOME=分配到XDG_CONFIG_HOME的路径,

# use /e/git/config
export XDG_CONFIG_HOME=/e
git config --global user.name foo
git config --global user.email foo@xyz.com

# use /f/git/config
XDG_CONFIG_HOME=/f git config --global user.name bar
XDG_CONFIG_HOME=/f git config --global user.email bar@xyz.com

使用不同的名字和电子邮件,

git init test
cd test
touch a.txt
git add a.txt
# use foo and foo@xyz.com
export XDG_CONFIG_HOME=/e
git commit -m'hello foo'
# disable XDG_CONFIG_HOME
unset XDG_CONFIG_HOME

touch b.txt
git add b.txt
# use bar and bar@xyz.com
XDG_CONFIG_HOME=/f git commit -m"hello bar"

当我们想再次使用~/.gitconfig时,

mv ~/.gitconfig.bak ~/.gitconfig

相关问题