Git-1-git config
話說
各位讀者盆友,下午好!這篇部落格發表之前,應該是對Git有一定的瞭解,瞭解到什麼程度呢?
eg: 環境搭建、Git基本工作原理、clone程式碼、pull push程式碼、處理衝突、新建與切換分支、Merge程式碼……
筆者會陸續詳細或者簡略表達一個命令或者一串命令,有什麼意義呢?好玩,搞清楚究竟是怎麼回事,如此而已。
目錄
一、git config什麼時候用到?
二、哪些地方會跟git config有關?3個作用域指定的配置檔案到底在哪?如果配置衝突,優先順序呢?
三、總結
難度係數:★☆☆☆☆
建議用時:30min
一、git config什麼時候用到?
下載Git後,要初始化Git,指定使用者名稱和郵箱,才有許可權clone程式碼。
二、哪些地方會跟git config有關?3個作用域指定的配置檔案到底在哪?如果配置衝突,優先順序呢?
git config -e [–global]
git config -e [–system]
git config -e [–local或者–repository]
-e, –edit
Opens an editor to modify the specified config file; either –system, –global, or repository (default).
以上三者有何區別?我們help一下
git config --help
--global
For writing options: write to global ~/.gitconfig file rather
than the repository .git/config, write to $XDG_CONFIG_HOME/
git/config file if this file exists and the ~/.gitconfig file
doesn't.
--system
For writing options: write to system-wide
$(prefix)/etc/gitconfig rather than the repository .git/config.
For reading options: read only from system-wide
$(prefix)/etc/gitconfig rather than from all available
files.
--local
For writing options: write to the repository .git/config file.
This is the default behavior.
看3張圖就明白了:
git config -e 不指定作用域,預設編輯哪個呢?預設編輯本地
等同於:
git config -e --local 或 git config -e --repository
這個路徑在本地,也就是你clone專案主目錄第一層的.git/config檔案
git config -e --global
全域性配置在電腦家目錄下面的~/.gitconfig檔案裡。
git config -e --system
系統配置檔案在:/usr/local/git/etc/gitconfig裡面
好,以上三個總結完畢。
說道這裡,那麼git config –list 又是怎麼回事呢?
原來,git config –list就是
git config git config -e –lcoal git config -e –repository
git config -e –global
git config -e –system
的整合,你會發現git config –list整體分為三部分做展示
所以修改user.name和user.email就有多種方式,最簡潔的是:
法一:
git config --global user.name "your userName"
git config --global user.email "your email"
法二:
當然也可以直接編輯:
git config -e --global
有沒有想過,如果三種配置裡面都設定了某個引數,那麼最後生效的是哪種呢?它們之前的優先順序為(由高到低):git config > git config –global > git config –system。
也就是作用域範圍越廣的優先順序越低,相信這個不難理解。(摘抄,部落格來源:https://www.daixiaorui.com/read/240.html)
三、總結
瞭解得越多,也就越熟悉,越有掌控感。
筆者很喜歡Git,覺得Git設計特別好,所以很喜歡研究它。雖然只是一款工具,覺得持續花費精力還是很值得的。
好了,再會! 後面還有一系列Git乾貨。期待吧~ .