源代碼管理歷史
為了了解源代碼控制的重要性,對源代碼管理的開發歷史來一個簡短回顧應該會有一些啟發。這樣能讓我們洞察到底需要什么特性。以下是一些例子:
把源代碼的歷史版本存放在不同的檔案中。
這種方式最簡單,某種程度上還存在著,許多免費軟件項目提供過去發布的tar檔案供下載。
簽人和簽出的集中式源代碼管理。
在一些系統里,一個開發者可以鎖住文件獨家專享。每一個文件都被單獨管理。
像這樣的工具包括修訂控制系統( RCS)和源代碼控制系統(SCCS)。
一個集中式的存儲,在提交之前需要合并。包括并發版本系統(CVS)和Subversion。
尤其是Subversion,現在仍然用得很廣。許多企業有集中式的工作流程,而 Subversion能幫它們很好地實現這樣的流程。
一個去中心化的存儲。
在進化階梯的每一步,我們都得到了更多的靈活性、并發、更快的速度和更有效率的流程。我們也得到了可以自毀長城的更高級和強大的武器,切記!
目前,Git是這個類別里最流行的工具,但是還有許多其他類似的工具也還被使用著諸如Bazaar和Mercurial。
時間會告訴我們Git和它的數據模型是否會阻擋住其他源代碼管理寶座的競爭者,接下來的幾年內,誰將會毫無疑問地證明自己。