git配置文件

我们之前配置提交变更者信息时使用了git config命令:

jie$ git config user.name "jie"
jie$ git config user.email "jie@jie.com"

这个命令将我们的配置写入到了配置文件.git/config中

jie$ cd ~/gitstudy
jie$ cat  .git/config 
[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
[user]
    name = jie
    email = jie@jie.com

实际上我们直接在这个文件最后加入:

[user]
    name = jie
    email = jie@jie.com

也能配置提交者的信息,效果与git config命令相同,而且是修改后即时生效的,不需要再做其它工作。
git的配置文件全都是简单的.ini文件风格的文本文件,它们记录了很多git命令使用的各种选项和设置,有的设置用于调整个人偏好,有的设置则是对版本库正常工作所必需的,git支持不同层次的配置文件,按照优先级递减的顺序,它们如下所示:
.git/config 版本库特定的配置设置,可用 –file 选项修改,是默认选项,这个文件中的设置具有最高优先级。
~/.gitconfig 用户特定的配置设置,可用–global 选项修改。
/etc/gitconfig 这是系统范围的配置设置,如果有它的文件写权限,你就可以用–system选项修改它,这些设置
的优先级最低,这个文件由于安装的不同可能在其他位置,也可能不存在,这个文件在我系统上并不存在,而且
通常不会进行系统范围的配置。

例如:要设置用户名和email,用于你对所有版本库的所有提交,可以用git config –global命令设置~/.gitconfig中的
user.name和user.email的值:

jie$ git config --global user.name "jix_global"
jie$ git config --global user.email "jix_global@jix.com"
jie$ cat ~/.gitconfig 
[user]
    name = jix_global
    email = jix_global@jix.com

使用git config 不带–global可以设置一个版本库用户的name和email,这个设置会覆盖 –global的设置:

jie$ cd ~/gitstudy/
jie$ git config user.name "jix"
jie$ git config user.name "jix@jix.com"
jie$ cat .git/config 
[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
[user]
    name = jix
    email = jix@jix.com

.git/config文件中的设置比~/.gitconfig优先级高,此时我们commit时的提交者信息为jix,而不是jix_global。
使用git config -l 命令可以查看当前配置:

jie$ git config -l
user.name=jix_global
user.email=jix_global@jix.com
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true
user.name=jix
user.email=jix@jix.com
jie$ pwd
/home/jie/gitstudy
jie$ cd ..
jie$ git config -l
user.name=jix_global
user.email=jix_global@jix.com

可以看到离开了版本库所在目录,~/gitstudy/.git/config中的配置就不存在了。而~/.gitconfig 中的配置仍然存在。下面展示几个有用的配置:
1.配置日志消息编辑器

jie$ cat  ~/.gitconfig 
[core]
    editor=vim
[user]
    name = jix_global
    email = jix_global@jix.com

editor=vim这条配置将日志消息编辑器设置为vim。
2.配置别名

jie$ cat  ~/.gitconfig 
[core]
    editor=vim
[user]
    name = jix_global
    email = jix_global@jix.com
[alias]
    br = branch
    st = status
    show-graph = log --graph --abbrev-commit --pretty=oneline

在[alias]下配置别名,这样我们就可以用短命令替代长命令了,这个真是懒人的福音啊,效果如下:

jie$ git br
* master
jie$ git st
On branch master
nothing to commit, working directory clean
jie$ git show-graph
* afa8f4d add last line: add for git commit
* 289d3bf new test.txt

git的配置文件基本就是这样了,想配置什么,就在相应配置项(比如[alias]) 下添加配置即可。但是git配置项还挺多的,可以在需要配置时查看相关资料。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值