查閱了一下網絡和博客園,發現還沒有一個明確地指導源碼管理提交準則的相關文章,因此斗膽整理了一部分自己平時開發管理的心得,加上查閱了部分英文資料寫了一個不算很完善的SVN提交準則。
負責而謹慎地提交自己的代碼
SVN更新的原則是要隨時更新,隨時提交。當完成了一個小功能,能夠通過編譯并且并且自己測試之后,謹慎地提交。
如果提交過程中產生了沖突,則需要同之前的開發人員聯系,兩個人一起協商解決沖突,解決沖突之后,需要兩人一起測試保證解決沖突之后,程序不會影響其他功能。
如果提交過程中產生了更新,則也是需要重新編譯并且完成自己的一些必要測試,再進行提交。
保持原子性的提交
每次提交的間歇盡可能地短,以一個小時,兩個小時的開發工作為宜。如在更改UI界面的時候,可以每完成一個UI界面的修改或者設計,就提交一次。在開發功能模塊的時候,可以每完成一個小細節功能的測試,就提交一次,在修改bug的時候,每修改掉一個bug并且確認修改了這個bug,也就提交一次。我們提倡多提交,也就能多為代碼添加上保險。
不要提交自動生成的文件
Visual Studio在生成過程中會產生很多自動文件,如.suo等配置文件,Debug,Release,Obj等編譯文件,以及其他的一些自動生成,同編譯代碼無關的文件,這些文件在提交的時候不應該簽入,如果不小心簽入了,需要使用Delete命令從倉庫中刪除。
不要提交不能通過編譯的代碼
代碼在提交之前,首先要確認自己能夠在本地編譯。如果在代碼中使用了第三方類庫,要考慮到項目組成員中有些成員可能沒有安裝相應的第三方類庫或者沒有放入GAC(針對.Net Framework)中,項目經理在準備項目工作區域的時候,需要考慮到這樣的情況,確保開發小組成員在簽出代碼之后能夠在統一的環境中進行編譯。
不要提交自己不明白的代碼
代碼在提交入SVN之后,你的代碼將被項目成員所分享。如果提交了你不明白的代碼,你看不懂,別人也看不懂,如果在以后出現了問題將會成為項目質量的隱患。因此在引入任何第三方代碼之前,確保你對這個代碼有一個很清晰的了解。
提前宣布自己的工作計劃
在自己準備開始進行某項功能的修改之前,先給工作小組的成員談談自己的修改計劃,讓大家都能了解你的思想,了解你即將對軟件作出的修改,這樣能盡可能的減少在開發過程中可能出現的沖突,提高開發效率。同時你也能夠在和成員的交流中發現自己之前設計的不足,完善你的設計。
對提交的信息采用明晰的標注
+) 表示增加了功能
*) 表示對某些功能進行了更改
-) 表示刪除了文件,或者對某些功能進行了裁剪,刪除,屏蔽。
b) 表示修正了具體的某個bug