Subversion源代碼倉庫規劃一例

轉自:http://dog.xmu.edu.cn/modules.phpop=modload&name=News&file=article&sid=246&mode=thread&order=0&thold=0

Subversion的目錄結構是很自由的,所有的規劃都必須是你自己規定,考慮一個subversion倉庫的目錄樹,你可以把任何一個目錄認定爲一個項目,你可以只checkout這個目錄下的所有文件進行編碼,跟CVS不同,CVS顯式指定一個個module。所以你可以在一個倉庫內保存多個項目,也可以一個倉庫保存一個項目而使用多個倉庫。我個人比較喜歡第二種,因爲Subversion的每次commit都會導致整個倉庫版本號增加一個,會使得多個項目的版本號出現斷層。而且如果多個項目參與人不同,就必須使用apache2進行細粒度的權限控制,不是太方便。一個倉庫一個項目,顯得更優雅一些。

以下是我研究出的倉庫規劃。

在server端,新建一個目錄用來存放所有的倉庫。比如c:/svnrepos。然後在這個目錄下建立每個項目獨立的倉庫。

svnadmin create "c:/svnrepos/rolex"
svnadmin create "c:/svnrepos/omega"

使用 svnserve -d -r "c:/svnrepos" 啓動。這樣你的項目的url是:

svn://IP/rolex svn://IP/omega

在客戶端新建一個目錄,作爲import的內容,比如c:/svnimport/rolex,然後在裏面建立branches,tags,trunk子目錄,把你需要源代碼管理的項目放入trunk目錄,注意刪除垃圾文件。在c:/svnimport/rolex上點擊Import...,選擇url爲svn://IP/rolex,導入。你可以使用倉庫瀏覽器查看導入的效果。

需要工作時,新建一個目錄比如c:/svnclient/rolex/trunk,然後在trunk上checkout出svn://IP/rolex/trunk上的內容。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章