git config打造個性化的git環(huán)境

配置是一個軟件能夠滿足不同需求的基本功能。

Git作為現(xiàn)代分布式版本控制的利器,已經(jīng)是軟件開發(fā)過程中的基本工具。然而,好多新手在安裝完Git后,并不太關注Git的配置。今天把Git的配置介紹一下,每個人都可以根據(jù)自己的情況,打造一個屬于自己的Git。

第一、git config 命令

上面是git config 命令的使用說明,git版本為2.16.2.

對于配置我們一般的操作無非就是查看配置、添加配置、刪除配置,這幾個操作就能滿足平時的需求。但是這里的問題是:配置項都有什么?

第二、配置級別

上面的命令選項中可以看到--system,--global,--local三個選項,分別代表了配置的三個不同級別。

--system:系統(tǒng)級別配置,適用于系統(tǒng)所有用戶和所有項目的配置。配置文件一般位于Linux:/etc/gitconfig;Win:C:\Program Files\Git\mingw64\etc\gitconfig.

--global:全局級別配置,適用于當前登錄用戶的配置。配置文件一般位于Linux:~/.gitconfig;Win:C:\Users\xxx\.gitconfig.

--local:本地級別配置,適用于特定git項目的配置。配置文件一般位于.git/config

注意:這三級的配置采用就近原則,離git項目最近的配置生效,優(yōu)先級為1<2<3。

除了這三個默認位置的配置文件,還可以通過-f參數(shù)指定其他路徑下的配置文件。

查看配置的命令為:

git config --system --list

git config --global --list

git config --local --list

第三、用戶信息

在大多數(shù)git教程中也都會介紹,安裝完git,第一步是設置用戶信息(用戶名和email),這個非常重要,因為每次提交時都是使用該信息,被寫入到git的提交歷史中。

git config --global user.name"xxx"#名稱

git config --global user.email"xxx@qq.com"#郵箱

這里使用的是--global,只需要配置一次,這個用戶下的所有git項目提交時都會使用該配置。

注意:git的這個配置太靈活了,在實際DevOps的使用中,會遇到這樣的問題:開發(fā)人員設置個人信息過于隨便,導致代碼提交記錄中記錄的用戶信息與DevOps用戶體系不一致,在統(tǒng)計如每個人的提交記錄時統(tǒng)計不上。解決辦法是,在一開始就要通過git pre-commit hook進行校驗,保證用戶信息的一致性。

另一個經(jīng)常遇到的問題是多賬號共存,在同一個電腦上,同時使用github上的賬號和企業(yè)內(nèi)部的賬號??梢詫⒂脩粜畔⒃O置為--local級別,比如,github上的git庫克隆后,進入git庫的目錄下執(zhí)行:

git config --local user.name"xxx"#名稱

git config --local user.email"xxx@qq.com"#郵箱

第四、別名設置

好多人在使用git命令后的感受是太繁瑣,因為要輸入一大串命令,每個命令還不能輸錯,這是因為git并不會在你輸入部分命令時自動推斷出你想要的命令。如果不想每次都輸入完整的命令,可以通過git config為每一個命令設置一個別名。

格式為:

git config --global alias.xx command

比如:

gitconfig--globalalias.cocheckout

gitconfig--globalalias.ststatus

gitconfig--globalalias.cicommit

gitconfig--globalalias.logone'log --pretty=oneline' #當命令為一組時,加引號

使用如下:

是不是使用起來方便了很多。

第五、密碼問題

最開始接觸這個問題,是由于在企業(yè)內(nèi)部好多人讓我解決代碼庫無法clone的問題,報的錯誤是:fatal: Authentication failed for 'http://***********‘,并且是在新分配完權限后報的問題,這讓我很困惑,經(jīng)過詢問,用戶之前有使用過其他賬號的情況,第一反應就是git保存了之前賬號的信息。

使用git config --list查看git的配置信息,找到存儲密碼的設置:

credential.helper=manager

重置該配置項:

git config --global||--system||--local --unset credential.helper

再次clone時就會提示輸入賬號密碼,克隆成功。

第六、其他

上面是工作中經(jīng)常會涉及到的問題,除此之外可以使用git默認值,也可以根據(jù)自己喜好進行設置,比如:顏色設置,編輯器設置,diff工具設置,還有其他很多的配置項,可以參考git的官方文檔進行查閱:https://git-scm.com/docs/git-config。

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容