git配置及自定义

1. git config简介

git config就是对git进行一些配置。而配置一般都是写在配置文件里面,git里面一共有3个配置文件,首先是:仓库级配置文
件:该文件位于当前仓库下,路径.git/,文件名为.gitconfig,这个配置中的设置只对当前所在仓库有效
第二个是全局级配置文件:win7下面路径,在用户目录下,以个人的PC机为例,其路径为:C:\Users\show.ht,文件名为.gitconfig
最后是系统级配置文件:本地git的安装目录下,以show的git安装路径为例:D:\Program Files\Git\etc,文件名为:gitconfig,内容如下:

在git中,每一项的配置名称又叫做“section”,
“section”下面的每一行对应着一个key和一个value。需要注意的是:系统级配置文件不同于另外两个配置文件,是因为他少了 一个点,因此用vim打开的时候,是没有高亮显示的。”core”这个section在每个配置文件中都有,那么它git最终会调用哪个配置
文件呢?这就要有一个先后顺序了。
2. 配置文件如何生效的
对于git来说,配置文件 的权重是仓库>全局>系统。Git会使用这一系列的配置文件来存储你定义的偏好,它首先会查找/etc/gitconfig文件(系统级),该 文件含有对系统上所有用户及他们所拥有的仓库都生效的配置值。接下来Git会查找每个用户的~/.gitconfig文件(全局级)。最后 Git会查找由用户定义的各个库中Git目录下的配置文件.git/config(仓库级),该文件中的值只对当前所属仓库有效。以上阐述的三 层配置从一般到特殊层层推进,如果定义的值有冲突,以后面层中定义的为准,例如:.git/config和/etc/gitconfig的较量中, .git/config取得了胜利。虽然你也可以直接手动编辑这些配置文件,但是运行git config命令将会来得简单些。下面我们就来看看如
何利用git config命令来编辑配置各个级别的文件。
   3. 用git config命令查看配置文件
命令参数 –list, 简写 -l
格式:git config [–-local|–-global|-–system] -l
查看仓库级的config,即.git/.config,命令:git config –-local -l
查看全局级的config,即C:\Users\show.ht\.gitconfig,命令:git config –-global -l
查看系统级的config,即D:\Program Files\Git\etc\gitconfig,命令:git config –-system -l
查看当前生效的配置,命令:git config -l

   4. 使用git config命令编辑配置文件
编辑的英文单词是什么,没错,edit
命令参数 –edit, 简写 -e
格式:git config [–-local|–-global|–-system] -e
查看仓库级的config,即.git/.config,命令:git config –-local -e,与–list参数不同的是,git config -e默认是编辑仓库级的配置文件。
查看全局级的config,即C:\Users\******.ht\.gitconfig,命令:git config –-global -e
查看系统级的config,即D:\Program Files\Git\etc\gitconfig,命令:git config –-system -e
   执行这个命令的时候,git会用配置文件中设定的编辑器打开配置文件。
     5. 增加一个配置项
参数 –add
格式: git config [–local|–global|–system] –add section.key value(默认是添加在local配置中)
注意add后面的section,key,value一项都不能少,否则添加失败。比如我们执行:git config –add cat.name tom

然后查看local中的配置:

注意增加一项配置而不赋值 git config –add cat.age,或者单单增加一个section,git config –add cat1,不会成功。
6.获取一个配置项
有时候,我们并不需要查看所有配置的值,而是查看某个配置项的值,怎么做呢?
命令参数 –get
格式:git config [–local|–global|–system] –get section.key(默认是获取local配置中内容)
我们先往global配置中写入一个cat.name=Tomcat的配置项,再使用git config –get cat.name看看得到的是什么

结果就是local中的cat.name=Tom,因此git config –get section.key 等价于git config –local –get section.key
如果获取一个section不存在的key值,不会返回任何值
如果获取一个不存在的section的key值,则会报错

 7.删除一个配置项
命令参数 –unset
格式:git config [–local|–global|–system] –unset section.key
相信有了前两个命令的使用基础,大家举一反三就知道改怎么用了,来,我们试试删除local配置中的cat.name

另外最近使用git 产生的一个报错

具体报错

fatal: The remote end hung up unexpectedly

error: RPC failed; curl 18 transfer closed with outstanding read data remaining


解决方法

git config --global http.postBuffer 524288000

需要注意的是http.postBuffer 后,单位是b,524288000B也就500M左右

或者git config –-global -e进行编辑修改也行。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值