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