Git歷險記(2):Git的安裝和配置
51CTO編者按:《Git Community Book》的譯者劉輝在上一篇Git歷險記(1):初識版本控制系統Git講了一個 “hello Git” 的小故事。使廣大朋友對Git有了一定了解。但不少朋友對Git還是有很多疑問。本文是Git歷險記的第二篇,從這一篇開始,劉輝將從Linux (*nix) 平臺和Windows平臺介紹起,,更深入講解Git的下載、安裝和配置。以下是正文。
從這一篇開始,我就將比較“啰嗦”的和大家一起從零開始經歷Git使用的每一步,當然對我而言這也是一個重新認識Git的過程。
使用Git的第一步肯定是安裝Git,因為在多數平臺上Git是沒有預裝的。我平時主要的工作環境是windows和Linux(ubuntu),我想看這篇文章的同學多半也是在這兩個平臺下工作;下面我講一下如何在這兩個平臺下安裝和配置Git。
BTW:如果是蘋果平臺的用戶的安裝可以參看一下這里(1,2),配置和命令行的使用與windows、Linux(*nix)平臺差別不大。
Linux (*nix) 平臺
Linus開發Git的最初目的就是為了開發Linux內核服務的,自然它對Linux的平臺支持也是最棒的。在Linux下安裝Git大約有幾種方法:
從源代碼開始(這種方法也適合于多數*nix平臺)
從Git官網的下載頁面下載它最新穩定版的源代碼,就可以從源代碼開始編譯、安裝:
$ wget http://kernel.org/pub/software/scm/git/git-1.7.3.5.tar.bz2 $ tar -xjvf git-1.7.3.5.tar.bz2 $ cd git-1.7.3.5 $ make prefix=/usr all ;# prefix設置你的Git安裝目錄 $ sudo make prefix=/usr install ;# 以root權限運行
為了編譯Git的源代碼,我們還需要一些庫: expat、curl、 zlib 和 openssl; 除了expat 外,其它的庫可能在你的機器上都安裝了。
使用安裝包管理器(apt 或 yum)
在 fedora 等系統下用yum :
$ yum install git-core
在debian, ubuntu等系統下用apt :
$ apt-get install git-core
有時候,你系統里的安裝包管理器出現了問題,或是要安裝Git的機器不能上網、沒有編譯器的話,你可以從下面的站點去下載 “.deb” 或 “.rpm”的安裝包:
●RPM Packages
●Stable Debs
Windows平臺
windows平臺有兩個模擬*nix like運行環境的工具:cygwin,msys;Git在cygwin,msys下都有相應的移植版本。我個人覺得msys平臺下的msysGit最好用,現在我在windows下也是用的這個版本。
很多同學可能要問,現在windows下有那多Git用戶,為什么Git不直接出一個windows native版。俺當年翻看了一下Git的源代碼,它里面使用了大量的*nix平臺的native api,而這些api在windows下是沒有的,所以必須要用cygwin、msys這樣的一個中間層來滿足軟件移植的要求。
下面我“啰嗦”一下如何在windows下安裝msysGit。
下載
到它的下載頁面去下載一個最新的完整安裝包,筆者在撰寫本文時下載的是這個。
安裝
安裝的過程沒有什么好說的,一般是開始安裝后,一路的點擊“下一步”。由于windows平臺的換行符(CRLF)和Linux(*nix)平臺的換行符(LF)不同,那么在windows下開發其它平臺軟件的朋友有一個地方要注意(見下圖):
在這里一最好選“Checkout as-is, commit as-is”這個選項,這樣,Git就不會修改你代碼的換行符風格。
以前有個朋友因為選錯了這個選項,以致他在windows平臺下的一簽出(checkout)其它平臺的代碼,就會顯示”已修改“(modified),不過后來可能msysGit也認識到這個問題了,就把默認選項改成了這個選項。
BTW: 其實前面兩項也是有用的,如果對windows和Linux(*nix)平臺如何處理換行符很熟悉的話,也可以嘗試一下前面兩個選項:)
配置Git
在Linux下和windows下配置Git的方法差不多,只是在Linux下,可以在命令行里直接使用git config進行配置, 而在windows下則要先打開“Git Bash”,進入msysGit命令行界面,再用git config命令進行相應的配置操作。
好了,前面安裝好了Git,現在我們開始配置:
第一個需要配置的就是用戶的用戶名和email,因為這些內容會出現在你的每一個提交(commit)里面的,像下面這樣:
$ git log #我們用git log查看當前倉庫的提交(commit)日志 commit 71948005382ff8e02dd8d5e8d2b4834428eece24 Author: author Date: Thu Jan 20 12:58:05 2011 +0800 Project init
下面的這兩行命令就是設置用戶名和email:
$ git config --global user.name author #將用戶名設為author $ git config --global user.email author@corpmail.com #將用戶郵箱設為author@corpmail.com
Git的配置信息分為全局和項目兩種,上面命令中帶了“--global"參數,這就意味是在進行全局配置,它會影響本機上的每個一個Git項目。
大家看到,上面我們用的是@corpmail(公司郵箱);但是有時候我們可能也參與了一些開源項目,那么就需要新的用戶名和自己的私人郵箱,Git 可以為每個項目設定不同的配置信息。
在命令行環境,進入Git項目所在目錄,執行下面的命令:
$ git config user.name nickname#將用戶名設為nickname $ git config user.email nickname@gmail.com #將用戶郵箱設為nickname@gmail.com
Git的設計哲學和Linux(*nix)一樣,盡量的使用“文本化”(Textuality);它里面盡量用文本化的形式存儲信息,對于配置信息也更是如此,用戶的這些配置信息全部是存儲在文本文件中。Git的全局配置文件是存放在"~/.gitconfig"(用戶目錄下的.gitconfig)文件中:
我們用cat、head命令查看全局配置信息文件,并假設相關配置信息存儲在文件的前3行(當然也有可能不在前3行,這里只是為了方便表示)
$ cat ~/.gitconfig | head -3 [user] name = author email = author@corpmail.com
而項目配置文件是存放在Git項目所在目錄的".git/config"文件中,這里也像上面一樣用cat、head命令查看一下:
$ cat .git/config | head -3 [user] name = nickname email = nickname@gmail.com
如果大家對于Git熟悉后,可以直修改”~/.gitconfig”,”.git/config”這兩個文件進行配置。
原文鏈接:http://www.infoq.com/cn/news/2011/01/git-adventures-install-config
【編輯推薦】