專欄發(fā)布平臺(tái):極客時(shí)間
主要內(nèi)容
源代碼管理工具在軟件項(xiàng)目中已經(jīng)是標(biāo)準(zhǔn)配置了,幾乎每個(gè)軟件項(xiàng)目都會(huì)應(yīng)用到,可以說(shuō)是最基礎(chǔ)的項(xiàng)目開(kāi)發(fā)工具。
一、源代碼管理工具發(fā)展簡(jiǎn)史
源代碼管理工具也叫版本控制系統(tǒng),是保存文件多個(gè)版本的一種機(jī)制。每一次有人提交了修改,這個(gè)修改歷史都會(huì)被版本控制系統(tǒng)記錄下來(lái)。
源代碼管理工具從誕生到現(xiàn)在已經(jīng)有 40 多年的歷史了,經(jīng)歷了四個(gè)階段。
沒(méi)有源代碼管理工具的時(shí)代
早些年開(kāi)發(fā)軟件可沒(méi)有我們這么幸運(yùn),在 1972 年之前都沒(méi)有任何工具可以幫助我們做源代碼管理。
本地版本管理
最早的版本控制系統(tǒng)是 SCCS( Code ),誕生于 1972 年,它實(shí)現(xiàn)了對(duì)單個(gè)文件保留多個(gè)版本,這就意味著你可以看到每一個(gè)文件的修改歷史了。
后來(lái)又有了 RCS ( )
集中式版本管理
1986 年問(wèn)世的 CVS( )是第一個(gè)采用集中式的服務(wù)器來(lái)進(jìn)行版本庫(kù)的管理工作。
再后來(lái)的 SVN()則對(duì) CVS 進(jìn)行了很多優(yōu)化。
分布式版本管理
分布式版本管理工具的典型代表就是 Git,分布式版本控制系統(tǒng)的整個(gè)代碼庫(kù)的副本都可以存儲(chǔ)在用戶的本地系統(tǒng)上。
二、如何選擇合適的源代碼管理系統(tǒng)
現(xiàn)在源代碼管理系統(tǒng)已經(jīng)有很多的選擇好用的工作流程軟件,你可以選擇網(wǎng)上托管的代碼管理服務(wù),或者是自己搭建。
自己搭建源代碼管理系統(tǒng)
Git、、等
網(wǎng)上的代碼托管平臺(tái)
、、等
三、如何用好源代碼管理工具?
用好源代碼管理工具,有三個(gè)簡(jiǎn)單可行的原則:
原則一:要頻繁的提交原則二:每次提交后要跑自動(dòng)化測(cè)試原則三:提交的代碼要有人審查 四、我該選擇什么樣的開(kāi)發(fā)流程?
現(xiàn)在基于源代碼管理有三種主要的開(kāi)發(fā)流程:
Git flow
我們具體看看基于 flow 是如何開(kāi)發(fā)的。
第一步:創(chuàng)建一個(gè)分支第二步:提交更新第三步:創(chuàng)建一個(gè) Pull 第四步:討論和代碼審查五步:部署測(cè)試第六步:合并
無(wú)論你基于哪一種開(kāi)發(fā)流程,最好能做到這兩點(diǎn):
有一個(gè)穩(wěn)定的代碼分支;在合并分支之前,對(duì)代碼有審查,自動(dòng)化測(cè)試要能通過(guò)。 五、其他摘抄 總結(jié)
源代碼管理工具也叫版本控制系統(tǒng),是保存文件多個(gè)版本的一種機(jī)制,可以記錄文件的歷史版本。
用好源代碼管理工具好用的工作流程軟件,設(shè)計(jì)好開(kāi)發(fā)流程,保證好代碼質(zhì)量,你的協(xié)作才能更高效。