【精選】竟然還有你不知道的git神奇操作?
在git中,我們使用git config 命令用來(lái)配置git的配置文件,git配置級(jí)別主要有以下3類:
1、倉(cāng)庫(kù)級(jí)別 local 【優(yōu)先級(jí)最高】
2、用戶級(jí)別 global【優(yōu)先級(jí)次之】
3、系統(tǒng)級(jí)別 system【優(yōu)先級(jí)最低】
通常:
git 倉(cāng)庫(kù)級(jí)別對(duì)應(yīng)的配置文件是當(dāng)前倉(cāng)庫(kù)下的.git/config 【在當(dāng)前目錄下.git目錄默認(rèn)是隱藏的,所以在文件管理器中我們要打開(kāi)顯示以藏文件】

git 用戶級(jí)別對(duì)應(yīng)的配置文件是用戶宿主目錄下的~/.gitconfig 【宿主目錄:C:\Users\xiong】

git系統(tǒng)級(jí)別對(duì)應(yīng)的配置文件是git安裝目錄下的 /etc/gitconfig
【但是我的是在D:\Program Files\Git\mingw64\etc目錄下】

當(dāng)然我們可以在cmd命令提示符中輸入以下查看配置信息
1、git config --local -l 查看倉(cāng)庫(kù)配置【必須要進(jìn)入到具體的目錄下,比如要查看TestGit倉(cāng)庫(kù)的配置信息】

2、git config --global -l 查看用戶配置
3、git config --system -l 查看系統(tǒng)配置

4、git config -l查看所有的配置信息,依次是系統(tǒng)級(jí)別、用戶級(jí)別、倉(cāng)庫(kù)級(jí)別

5.git config 常用配置選項(xiàng)
git config -e 編輯配置文件
git config --local -e 編輯倉(cāng)庫(kù)級(jí)別配置文件
git config --global -e 編輯用戶級(jí)別配置文件
git config --system -e 編輯系統(tǒng)級(jí)別配置文件
git config 添加配置項(xiàng)目
git config --global user.email “[email protected]”
git config --global user.name “Your Name”
上面的操作表示添加用戶級(jí)別的配置信息,也就是說(shuō)修改用戶宿主目錄下面的配置文件
6. 配置文件如何生效的
對(duì)于git來(lái)說(shuō),配置文件的權(quán)重是倉(cāng)庫(kù)>全局>系統(tǒng)。Git會(huì)使用這一系列的配置文件來(lái)存儲(chǔ)你定義的偏好,它首先會(huì)查找/etc/gitconfig文件(系統(tǒng)級(jí)),該文件含有對(duì)系統(tǒng)上所有用戶及他們所擁有的倉(cāng)庫(kù)都生效的配置值。接下來(lái)Git會(huì)查找每個(gè)用戶的~/.gitconfig文件(全局級(jí))。最后Git會(huì)查找由用戶定義的各個(gè)庫(kù)中Git目錄下的配置文件.git/config(倉(cāng)庫(kù)級(jí)),該文件中的值只對(duì)當(dāng)前所屬倉(cāng)庫(kù)有效。
7.增加配置項(xiàng)
參數(shù) --add
格式: git config [--local|--global|--system] --add section.key value(默認(rèn)是添加在local配置中) 注意add后面的section,key,value一項(xiàng)都不能少,否則添加失敗。
比如我們執(zhí)行:
git config –add cat.name tom 
8.獲取一個(gè)配置項(xiàng)
有時(shí)候,我們并不需要查看所有配置的值,而是查看某個(gè)配置項(xiàng)的值,怎么做呢?
命令參數(shù) --get
格式:git config [--local|--global|--system] --get section.key(默認(rèn)是獲取local配置中內(nèi)容)我們先往global配置中寫(xiě)入一個(gè)cat.name=Tomcat的配置項(xiàng),再使用
git config --get cat.name
看看得到的是什么:

結(jié)果就是local中的cat.name=Tom,因此
git config --get section.key
等價(jià)于
git config --local --get section.key如果獲取一個(gè)section不存在的key值,不會(huì)返回任何值
如果獲取一個(gè)不存在的section的key值,則會(huì)報(bào)錯(cuò)
9.刪除一個(gè)配置項(xiàng)
命令參數(shù) –unset
格式:git config [--local|--global|--system] --unset section.key相信有了前兩個(gè)命令的使用基礎(chǔ),大家舉一反三就知道改怎么用了,來(lái),我們?cè)囋噭h除local配置中的cat.name

