Git的配置
初次運行 Git 前的配置
一般在新的系統上,我們都需要先配置下自己的 Git 工作環境。配置工作只需一次,以後升級時還會沿用現在的配置。當然,如果需要,你隨時可以用相同的命令修改已有的配置。
Git 提供了一個叫做 git config
的工具(譯註:實際是 git-config
命令,只不過可以通過 git
加一個名字來呼叫此命令。),專門用來配置或讀取相應的工作環境變量。而正是由這些環境變量,決定了 Git 在各個環節的具體工作方式和行為。這些變量可以存放在以下三個不同的地方:
/etc/gitconfig
文件:系統中對所有用戶都普遍適用的配置。若使用git config
時用--system
~/.gitconfig
文件:用戶目錄下的配置文件只適用於該用戶。若使用git config
時用--global
選項,讀寫的就是這個文件。- 當前項目的 Git 目錄中的配置文件(也就是工作目錄中的
.git/config
文件):這裏的配置僅僅針對當前項目有效。每一個級別的配置都會覆蓋上層的相同配置,所以.git/config
裏的配置會覆蓋/etc/gitconfig
中的同名變量。
在 Windows 系統上,Git 會找尋用戶主目錄下的 .gitconfig
文件。主目錄即 $HOME
變量指定的目錄,一般都是 C:\Documents and Settings\$USER
/etc/gitconfig
文件,只不過看當初 Git 裝在什麽目錄,就以此作為根目錄來定位。
用戶信息
第一個要配置的是你個人的用戶名稱和電子郵件地址。這兩條配置很重要,每次 Git 提交時都會引用這兩條信息,說明是誰提交了更新,所以會隨更新內容一起被永久納入歷史記錄:
$ git config --global user.name "John Doe"
$ git config --global user.email [email protected]
如果用了 --global
選項,那麽更改的配置文件就是位於你用戶主目錄下的那個,以後你所有的項目都會默認使用這裏配置的用戶信息。如果要在某個特定的項目中使用其他名字或者電郵,只要去掉 --global
.git/config
文件裏。
文本編輯器
接下來要設置的是默認使用的文本編輯器。Git 需要你輸入一些額外消息的時候,會自動調用一個外部文本編輯器給你用。默認會使用操作系統指定的默認編輯器,一般可能會是 Vi 或者 Vim。如果你有其他偏好,比如 Emacs 的話,可以重新設置:
$ git config --global core.editor emacs
差異分析工具
還有一個比較常用的是,在解決合並沖突時使用哪種差異分析工具。比如要改用 vimdiff 的話:
$ git config --global merge.tool vimdiff
Git 可以理解 kdiff3,tkdiff,meld,xxdiff,emerge,vimdiff,gvimdiff,ecmerge,和 opendiff 等合並工具的輸出信息。當然,你也可以指定使用自己開發的工具,具體怎麽做可以參閱第七章。
查看配置信息
要檢查已有的配置信息,可以使用 git config --list
命令:
$ git config --list
user.name=Scott Chacon
[email protected]
color.status=auto
color.branch=auto
color.interactive=auto
color.diff=auto
...
有時候會看到重復的變量名,那就說明它們來自不同的配置文件(比如 /etc/gitconfig
和 ~/.gitconfig
),不過最終 Git 實際采用的是最後一個。
也可以直接查閱某個環境變量的設定,只要把特定的名字跟在後面即可,像這樣:
$ git config user.name
Scott Chacon
Git的配置