git分支的作用詳解 git的分支有什么用???
git的分支有什么用啊?先說分支的作用:分支不是GIT的專利,早在CVS時(shí)代就有了。分支對(duì)于團(tuán)隊(duì)來說作用太大了。比如說一個(gè)項(xiàng)目現(xiàn)在是1.0版,那么開發(fā)團(tuán)隊(duì)可能要同時(shí)進(jìn)行1.1版和2.0版的開發(fā),這樣代
git的分支有什么用啊?
先說分支的作用:分支不是GIT的專利,早在CVS時(shí)代就有了。分支對(duì)于團(tuán)隊(duì)來說作用太大了。比如說一個(gè)項(xiàng)目現(xiàn)在是1.0版,那么開發(fā)團(tuán)隊(duì)可能要同時(shí)進(jìn)行1.1版和2.0版的開發(fā),這樣代碼就會(huì)出現(xiàn)較大分歧。這時(shí)候就需要用到分支了,不同的任務(wù)組在不同的分支上開發(fā),互相之間不會(huì)影響。再比如說,需要向項(xiàng)目中添加一個(gè)新功能,一般的團(tuán)隊(duì)都不會(huì)直接在主分支上修改,都會(huì)新建一個(gè)分支,在上面更改代碼。這樣做的好處就是保證主線代碼的完整性和可用性,也就是說,主線上都是穩(wěn)定的代碼,可以直接拿來發(fā)布的。
再說說分支在GIT上的特點(diǎn):GIT的技術(shù)可以說是非常強(qiáng)大,說一切開發(fā)都依賴于分支一點(diǎn)都不過分。一般項(xiàng)目的master分支都是穩(wěn)定的代碼,可以直接發(fā)布或者被項(xiàng)目之外的人使用。新特性和BUG修改都在不同的分支上進(jìn)行開發(fā)和測(cè)試。這樣規(guī)范了整個(gè)軟件的開發(fā)流程。分支之間的互不影響這種特性可以增加團(tuán)隊(duì)合作的效率。GIT分支的另外一個(gè)重要特性就是可以合并不同軟件倉(cāng)庫(kù)(fork)的分支。大體就是:開發(fā)團(tuán)隊(duì)有一個(gè)主軟件倉(cāng)庫(kù),開發(fā)者可以fork這個(gè)倉(cāng)庫(kù),相當(dāng)于克隆了一個(gè)私有的軟件倉(cāng)庫(kù),然后開發(fā)者就可以在自己的軟件倉(cāng)庫(kù)中建立分支并開發(fā)測(cè)試,測(cè)試完畢之后,可以向主軟件倉(cāng)庫(kù)提交merge request,這樣新開發(fā)的特性就會(huì)被合并到主軟件倉(cāng)庫(kù)的某個(gè)分支中。這種特性極大地推動(dòng)了開源項(xiàng)目,多年前參加開源項(xiàng)目都是神話,自從GIT出現(xiàn)后,每個(gè)人都可能成為開源項(xiàng)目的貢獻(xiàn)者,就是基于這種特性(請(qǐng)參照Github的pull request,和merge request是同一個(gè)東西)。