《Git權威指南》個人讀書筆記,僅做學習記錄之用
第1章:版本控制的前世和今生
[TOC]
1.1 黑暗的史前時代
1、早期的用於代碼比較和打補丁的工具:diff和patch。patch命令相當於diff命令的反向操作
2、其侷限性在於,不能對二進制文件進行處理
1.2 CVS——開啓版本控制大爆發
1、CVS(Concurrent Versions System)誕生於1985年
2、1986年通過新聞組發佈了CVS
3、1989年 Brian Berliner 用C語言重寫CVS
1.3 SVN——集中式版本控制集大成者
1、Subversion,其命令工具名爲svn,因此通常被稱爲SVN
2、由CollabNet公司於2000年資助並開發完成,目的是爲了創建一個更好的版本控制工具,用以取代CVS
3、SVN最具特色的功能是輕量級的拷貝
4、授權方式採用授權文件的形式來實現
5、SVN的創舉,在工作區跟蹤目錄下(.snv目錄)爲當前目錄中的每一個文件都保存一份冗餘的原始拷貝
6、2009年年底,SNV由CollabNet公司移交給Apache社區管理,成爲了Apache組織的一個子項目
1.4 Git——Linus的第二個偉大作品
1、分佈式版本控制系統最大的反傳統之處在於,可以不需要集中式的版本庫,每個人都工作在通過克隆建立的本地版本庫中。所有的操作都在本地完成不要網絡的連接
2、Git誕生紀實:
2005年4月3日,開始開發Git
2005年4月6日,項目發佈
2005年4月7日,Git開始作爲自身的版本控制工具
2005年4月18日,發生第一個多分支合併
2005年4月29日,Git的性能達到作者的預期
2005年6月16日,Linux內核發佈2.6.12,Git已經在維護Linux的核心源代碼