git配置

128 阅读4分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 N 天,点击查看活动详情

git config作用

git自带一个配置工具git config来设置git的环境变量,这些配置变量用于控制git的外观和行为。

配置变量的存储位置

配置变量存储在三个位置:

  • git安装位置\etc\gitconfig:该文件包含系统上每一个用户以及他们仓库的通用设置。如果在执行 git config 时带上 --system 选项,那么它就会读写该文件中的配置变量。
  • 电脑当前用户文件夹.gitconfig或者电脑当前用户文件夹.config\git\config:该文件中的内容只针对当前系统用户及该用户仓库的设置,你可以使用 --global 选项让 Git 将信息读写入此文件,这会对该用户的该系统上所有仓库生效。
  • 当前项目根目录.git\config:针对该仓库的设置,可以通过--local来使git强制读写该文件,虽然默认就自动使用--local

上面几个位置的配置都是一样的功效,但是级别不同,我越晚介绍的级别越高。从低到高分别称作:系统级、用户级、仓库级。

而高级别的配置将会覆盖低级别的配置。

这是因为git会依次读取系统级、用户级、仓库级的信息,由于级别高的后读取,所以git就直接将先读取的信息覆盖掉了。

例如:当前项目根目录.git\config会覆盖电脑当前用户文件夹.config\git\config的配置

当然,若是一个变量级别高的没有,级别低的有,那这个变量自然不会被覆盖。即,git会将高级别与低级别间冲突的信息进行覆盖。

读取到的变量信息也肯定是综合了各个级别并解决冲突了的信息。

如果你在 Windows 上使用 Git 2.x 以后的版本,那么还有一个系统级的配置文件,Windows XP 上在 C:\Documents and Settings\All Users\Application Data\Git\config ,Windows Vista 及其以后的版本在 C:\ProgramData\Git\config 。

此文件只能以管理员权限通过 git config -f <file> 来修改。

注意

在 Windows 系统中,Git 会查找电脑当前用户文件夹.gitconfig或者电脑当前用户文件夹.config\git\config中的前者。

修改配置变量

当我们想要配置信息时,只用依照上面的存储位置中,各位置对应的强制读写的选项进行设置即可。

例如:我想修改仓库级别的那我就使用git config --local 要修改的内容语句设定指定的配置变量。

当然我们也可以直接在文件中手动修改。

git config --local 要修改的内容中要修改的内容格式为要修改的变量 “值” 【值两边的引号可不带,但是之中有空格就必须带】

而要修改的变量的写法类似于对象中的属性关键词.变量名而关键词间若是想要使用一个空格【只能是一个】,请将空格换成.

例如: git config --local test.user.email "5634354234@136.com"这就会将test user关键词下的email变量的值修改为5634354234@136.com

配置变量的存储形式

配置变量的在文件中给的存储形式如下

image.png

其中中括号中包裹的是上面提到的关键词,关键词可能也是由空格间隔的两个字段构成,前面的字段不带引号,后面的字段带引号。

而这种关键词再进行设置的时候,就是借助点来代替空格生成的。但是只有第一个点会被当作空格,最后一个点会被当做属性的点操作符,剩下的就会被解析成点本身。

例如:

git config --local t1.t2.t3.test "test"的效果就是

image.png

查看git已有配置

  • 你可以通过以下命令查看所有的配置以及它们所在的文件:

git config --list --show-origin

  • 去掉上面命令中--show-origin则会列出所有的变量在没处理冲突前的值,所以可能会看见多个相同的变量名。
  • 若是想知道指定的变量的值和文件位置,就使用git config --show-origin 变量命令,告诉git只显示这个变量的相关信息。
  • git config 变量可以查看指定变量的值。

句末语

开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 N 天,点击查看活动详情