幾乎每一種版本控制系統(tǒng)都以某種形式支持分支。使用分支意味著可以從開發(fā)主線上分離開來,然后在不影響主線的同時繼續(xù)工作。在很多版本控制系統(tǒng)中,這是個昂貴的過程,常常需要創(chuàng)建一個源代碼目錄的完整副本,對大型項(xiàng)目來說會花費(fèi)很長時間

  有人把Git的分支模型稱為“必殺技特性”,而正是因?yàn)樗瑢it從版本控制系統(tǒng)家族里區(qū)分出來。Git有何特別之處呢?Git的分支可謂是難以置信的輕量級,它的新建操作幾乎可以在瞬間完成,并且在不同分支間切換起來也差不多一樣快。和許多其他版本控制系統(tǒng)不同,Git鼓勵在工作流程中頻繁使用分支與合并,哪怕一天之內(nèi)進(jìn)行許多次都沒有關(guān)系。理解分支的概念并熟練運(yùn)用后,才會意識到為什么Git是一個如此強(qiáng)大而獨(dú)特的工具,并從此真正改變開發(fā)方式。本文將詳細(xì)介紹Git分支

 

定義

  為了理解Git分支的實(shí)現(xiàn)方式,我們需要回顧一下Git是如何儲存數(shù)據(jù)的。Git保存的不是文件差異或者變化量,而只是一系列文件快照

  在Git中提交時,會保存一個提交(commit)對象,該對象包含一個指向暫存內(nèi)容快照的指針,包含本次提交的作者等相關(guān)附屬信息,包含零個或多個指向該提交對象的父對象指針:首次提交是沒有直接祖先的,普通提交有一個祖先,由兩個或多個分支合并產(chǎn)生的提交則有多個祖先

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式