不平凡軟件,始于2014
您當(dāng)前的位置:首頁 > 網(wǎng)站建設(shè)知識(shí)>詳細(xì)
鄭州軟件公司:網(wǎng)站建設(shè)對(duì)源碼管理建議
建議一:使用好的配置管理工具,也稱為版本控制工具(Version Control), 比如Git,SVN。 請(qǐng)徹底拋棄 VSS,如果是新采用配置管理工具,CVS已經(jīng)不再是選項(xiàng)。 配置管理工具與版本控制工具可以理解為指的是相同工具。
建議二:每個(gè)團(tuán)隊(duì)?wèi)?yīng)當(dāng)對(duì)代碼配置項(xiàng)和非配置項(xiàng)有所說明,不要假設(shè)每個(gè)團(tuán)隊(duì)新人都是代碼配置管理達(dá)人,小心自以為是的新手加入一些自以為是的垃圾。雖然可以刪除,但發(fā)現(xiàn)再刪除,其本身就是成本。
建議三:納入配置管理的文件的名稱里不要含有版本號(hào)。當(dāng)前的配置管理工具都有強(qiáng)大的版本控制功能,而只要在文件名中加入版本號(hào),那么相當(dāng)于放棄工具的版本控制功能,而只是把配置管理工具當(dāng)成了普通的存儲(chǔ)空間,就像共享目錄、FTP一樣。
建議四:依賴項(xiàng)也需要添加到版本庫,或者維護(hù)好相應(yīng)的庫,其中最重要的是構(gòu)件庫。 同時(shí)也包括圖片,編譯腳本,數(shù)據(jù)庫腳本,自動(dòng)化測(cè)試等等。
建議五: 沒有進(jìn)入版本庫,它就不存在,“工作進(jìn)展的唯一標(biāo)準(zhǔn)就是代碼進(jìn)了版本庫”。如果堅(jiān)持執(zhí)行這一條的話,發(fā)現(xiàn)其他的好習(xí)慣會(huì)隨之而來。把任務(wù)分成小塊所以經(jīng)常提交代碼,更加頻繁的更新,集成代碼。最重要的是,經(jīng)常提交代碼說明了正在做東西。
建議六:識(shí)別代碼配置項(xiàng)和非配置項(xiàng)。非配置項(xiàng)的例子有target目錄,.class文件,.clashpath,.project, .sonar, thumbs,debug文件夾等等,利用ignore功能把非配置項(xiàng)忽略掉。代碼配置項(xiàng)要完整,在別處能編譯得到相同結(jié)果,但是又不干擾別處的工作環(huán)境。
建議七:拋棄古老的配置管理三庫做法,常說的三庫是指開發(fā)庫(動(dòng)態(tài)庫)、受控庫和產(chǎn)品庫(靜態(tài)庫);做法是開發(fā)庫->受控庫->產(chǎn)品庫。 在當(dāng)年沒有強(qiáng)大版本控制工具的“古代”,三庫做法是不得不的選擇,而在現(xiàn)代版本控制工具(比如CVS,SVN,Git等)的支持下,三庫做法變得落伍了。
建議八:必須自己提交代碼,而不是讓別人代勞。有一些團(tuán)隊(duì)為了保證代碼庫的干凈,讓一個(gè)人專門負(fù)責(zé)審核和提交代碼。這并不是一個(gè)好習(xí)慣。源代碼管理并不是為了保持代碼的純凈,起碼在開發(fā)過程中不是這樣。它的目的是讓團(tuán)隊(duì)更頻繁的集成各自的工作,當(dāng)有問題的時(shí)候可以回退。
建議九:整體環(huán)境在云計(jì)算條件下也是可以成為配置項(xiàng),環(huán)境中最突出的元素是基礎(chǔ)數(shù)據(jù)。當(dāng)需要多種不同的環(huán)境(比如干凈環(huán)境、仿真環(huán)境、某個(gè)時(shí)間點(diǎn)環(huán)境)進(jìn)行調(diào)試、測(cè)試的時(shí)候,得到配置管理的環(huán)境在1分鐘之內(nèi)部署出來,那是多么高效的事情。 測(cè)試人員愛死這個(gè)了!
建議十:避免表面CMMI做法-只管理維護(hù)一個(gè)受控庫,展現(xiàn)給評(píng)估組和應(yīng)付各類檢查,而實(shí)質(zhì)上,項(xiàng)目團(tuán)隊(duì)使用另外的庫開展日常工作,只在應(yīng)付檢查時(shí)才把強(qiáng)制要求的交付物復(fù)制到受控庫。這種做法滿足CMMI評(píng)估,但實(shí)質(zhì)上沒有發(fā)揮配置管理的更多好處。古老的三庫方案恰恰就是這樣子的。
不平凡軟件,鄭州軟件開發(fā)公司,鄭州軟件開發(fā),鄭州軟件定制,鄭州微信開發(fā),鄭州進(jìn)銷存定制開發(fā),鄭州OA系統(tǒng)開發(fā),鄭州軟件開發(fā)公司
相關(guān)新聞換一組