每次看到別人寫Git的文章,同學中也有用Git感覺很高大上的感覺,工作中用的是SVN,周末倒騰了一下Git,Git是一款免費、開源的分布式版本控制系統,用於敏捷高效地處理任何或小或大的項目。Git 與其他的版本控制工具 CVS, SVN,VSS相比,它采用了分布式版本庫的方式,可以離線提交代碼,代碼保存在本地,可以享受SVN聯網能進行的一系列操作,如果你需要推送到服務器只需要push一下即可,每個人都是一個獨立的倉庫。
Git的由來
說到Git,不得不提的一個人是Linus Torvalds,Linus跟Linux差了一個字母,這哥們就是Linux的核心作者,芬蘭人,現在隨着Linux和Git的迅猛發展,大家都對Linus大牛的了解就更深刻一些。從91開始創建了開源的系統軟件Linux一直到2002年,Linus一直都是手動的合並代碼,,哥們手動了十年,拋開技術不談,就這個耐性就值得佩服。Linus認為CVS集中式控制太慢不適合控制,而且需要聯網,后來2000年出現的SVN也同樣找到了Linus的棄用,2002年的時候由於Linux發展的原因,手工合並代碼太慢采用了商業系統軟件BitKeeper,Linus一直使用BitMover公司的BitKeeper SCM(軟件配置管理)進行Linux運行管理。Linus在一份聲明中曾表示,“我一向不熱衷於開發開放源控制工具,而現在正是這一缺憾阻礙了我跟大多同行的交流。”他說,“BitKeeper正好解決了這一燃眉之急,使得工作效率倍增,其可復制傳播的本性方便我與任意同行之間交流和合作。”
當然,並不是每一位自由軟件或開放社區人士都與托沃茲一樣喜歡BitKeeper,因為它是享有知識產權的一套程序。使用擁有知識產權的工具來管理開放源軟件的開發早已引發了激烈的爭議。事實上,持有不同意見的主要是開放社區的兩大陣營,一個是以Linus為代表的實用主義者,他們主張只要是合適的工具就拿來使用,不管是版權產品還是開放軟件;而另一陣營是以理查德·斯托爾曼(Richard Stallman)為代表的純自由軟件論者,他們認為使用版權軟件違背了自由軟件的本質。
在有關開放源社區是否應該對BitKeeper進行“逆向工程”的爭議進行之時, Samba CIFS(通用因特網文件系統)服務器項目的聯合創始人Andrew Tridgell開發了一款新程序SourcePuller,與BitKeeper數據通用。Tridgel作為OSDL(開放源開發實驗室)的第二任掌門人,追隨者自然是有樣學樣。這個時候BitMover非常憤怒,收回來商業版BitKeeper在Linux的使用權,與之對應的提供了一個功能相對差點的Linux開源版本,並威脅說“如果你開發類似的軟件,就不能使用BP”
自此Linus對BP好感全無,閉關修煉兩周之后用C寫了額一個分布式控制系統(C沒學好的我只能仰望了),之后的Linux的系統源碼就由Git管理了,Git成為最流行的分布式版本控制系統GitHub在2008年上線之后它為開源項目免費提供Git存儲,無數開源項目開始遷移至GitHub,包括jQuery,PHP,Ruby on Rails,Android,YUI等。
Window下的Git
原本Git的使用范圍只適用於Linux/Unix平台,但在Windows平台使用其工作的時候需要Cygwin這樣的模擬環境,Git也一樣。Cygwin的安裝和配置都比較復雜(我沒弄過),后來Google把模擬環境和Git都包裝好了發布了一個msysgit的針對Window的客戶端(我想說微軟哪里去了),最開始托管在code.google.com,現在源碼和下載程序托管在http://msysgit.github.io/。
下面放一下自己的安裝過程吧:
我下載的是最新的1.9.4

基本信息介紹,直接next:
選擇路徑之后直接next:

將圖標放在桌面,方便使用,next:

默認的使用Git Bash進行版本控制:

默認的window窗體樣式:
d
等待幾分鍾:

安裝完成:

最后測試一下是否成功,雙擊Git Bash,紅色是計算機名,如果出現了則證明安裝成功了:

