Git 安裝配置

在使用Git前我們需要先安裝 Git。Git 目前支援 Linux/Unix、Solaris、Mac和 Windows 平臺上執行。

Git 各平臺安裝包下載地址為:http://git-scm.com/downloads


Linux 平臺上安裝

Git 的工作需要呼叫 curl,zlib,openssl,expat,libiconv 等庫的程式碼,所以需要先安裝這些依賴工具。

在有 yum 的系統上(比如 Fedora)或者有 apt-get 的系統上(比如 Debian 體系),可以用下面的命令安裝:

各 Linux 系統可以使用其安裝包管理工具(apt-get、yum 等)進行安裝:

Debian/Ubuntu

Debian/Ubuntu Git 安裝命令為:

$ apt-get install libcurl4-gnutls-dev libexpat1-dev gettext \
  libz-dev libssl-dev

$ apt-get install git

$ git --version
git version 1.8.1.2

Centos/RedHat

如果你使用的系統是 Centos/RedHat 安裝命令為:

$ yum install curl-devel expat-devel gettext-devel \
  openssl-devel zlib-devel

$ yum -y install git-core

$ git --version
git version 1.7.1

原始碼安裝

我們也可以在官網下載原始碼包來安裝,最新原始碼包下載地址:https://git-scm.com/download

安裝指定系統的依賴包:

########## Centos/RedHat ##########
$ yum install curl-devel expat-devel gettext-devel \
  openssl-devel zlib-devel

########## Debian/Ubuntu ##########
$ apt-get install libcurl4-gnutls-dev libexpat1-dev gettext \
  libz-dev libssl-dev

解壓安裝下載的原始碼包:

$ tar -zxf git-1.7.2.2.tar.gz
$ cd git-1.7.2.2
$ make prefix=/usr/local all
$ sudo make prefix=/usr/local install

Windows 平臺上安裝

在 Windows 平臺上安裝 Git 同樣輕鬆,有個叫做 msysGit 的專案提供了安裝包,可以到 GitHub 的頁面上下載 exe 安裝檔案並執行:

安裝包下載地址:https://gitforwindows.org/

官網慢,可以用國內的映象:https://npm.taobao.org/mirrors/git-for-windows/。

完成安裝之後,就可以使用命令列的 git 工具(已經自帶了 ssh 客戶端)了,另外還有一個圖形介面的 Git 專案管理工具。

在開始選單裡找到"Git"->"Git Bash",會彈出 Git 命令視窗,你可以在該視窗進行 Git 操作。


Mac 平臺上安裝

在 Mac 平臺上安裝 Git 最容易的當屬使用圖形化的 Git 安裝工具,下載地址為:

http://sourceforge.net/projects/git-osx-installer/

安裝介面如下所示:

18333fig0107-tn

Git 配置

Git 提供了一個叫做 git config 的工具,專門用來配置或讀取相應的工作環境變數。

這些環境變數,決定了 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。

此外,Git 還會嘗試找尋 /etc/gitconfig 檔案,只不過看當初 Git 裝在什麼目錄,就以此作為根目錄來定位。

使用者資訊

配置個人的使用者名稱稱和電子郵件地址:

$ git config --global user.name "itread01"
$ 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
http.postbuffer=2M
user.name=itread01
[email protected]

有時候會看到重複的變數名,那就說明它們來自不同的配置檔案(比如 /etc/gitconfig 和 ~/.gitconfig),不過最終 Git 實際採用的是最後一個。

這些配置我們也可以在 ~/.gitconfig/etc/gitconfig 看到,如下所示:

vim ~/.gitconfig 

顯示內容如下所示:

[http]
    postBuffer = 2M
[user]
    name = itread01
    email = [email protected]

也可以直接查閱某個環境變數的設定,只要把特定的名字跟在後面即可,像這樣:

$ git config user.name
itread01