環境:
操作系統:window xp sp2
SVN的版本:1.5(http://www.collab.net/downloads/subversion/)
TortoiseSVN的版本:1.5(http://sourceforge.net/projects/tortoisesvn/)
SVN服務器端安裝配置
1、 安裝SVN服務器端
A、到svn的官方網下載svn服務器端軟件到本地,然后安裝,按提示一步一步安裝完成。1.5版本默認的會將svn添加為window的服務的選項,勾選上即可隨操作系統的啟動而啟動svn的服務。而1.5以前的版本則需要手動添加的window的服務中,用window的sc命令,至于sc命令如何用讀者可以查看sc的幫助。
B、安裝完后打開window的服務管理器,將svn的服務啟動,全名為Svnversion Server。打開命令行運行命令svnadmin --version,可以看到svn安裝的版本信息,至此svn的安裝完成。
C、安裝svn客戶端端軟件TortoiseSVN,按步驟安裝下來即可。
2、SVN服務器端的配置
第一點只介紹了svn的安裝,要讓其能夠使用,我們還需要些配置,像版本庫的建立,用戶的訪問權限等。
A、創建版本庫。
打開命令行執行svnadmin create path,其中path表示你要建立的版本庫的存放路徑,此路徑也是svn在window的服務上注冊是指向的路徑,筆者的路徑為D:\svn_repository,即svnadmin create D:\svn_repository。運行該命令后,可以發現在D:\svn_repository的目錄下,創建了些文件和文件夾,至此創建版本庫成功。
B、配置用戶的訪問權限。
在剛才的目錄下有個文件夾conf,svn的配置文件就在此目錄中。打開該文件夾下的svnserver.conf文件,我們可以看到svn的配置信息的一些屬性,這里行前凡是有#的都表示被注釋掉了,你可以把#去掉讓該行的屬性生效,或者自己在最后添加新的行來生效svn的屬性。
在這我們關心的屬性說明如下:
anon-access = read 表示匿名的用戶可以什么樣的方式訪問版本庫,有none、read、write三個值可選,文件中為read說明匿名用戶可以只讀的方式訪問版本庫。
auth-access = write 表示驗證通過的用戶具有什么權限,有none、read、write三個值可選,文件中為write表示可寫,當然也可讀了。
password-db = passwd 表示用戶的密碼存放的地方。
authz-db = authz 表示版本庫中訪問路徑的規則,即誰只能訪問哪個目錄下的文件,其他目錄下的文件無法訪問。
現在我們將auth-access、password-db、authz-db三個屬性的前面的#去掉,使其生效,注意三個屬性前不能有空格。
然后我們編輯passwd和authz這兩個文件的信息。
a、在passwd文件中的[users]下添加能訪問版本庫的用戶名和密碼,如該文件中的事例。我們添加admin = admin
b、在authz文件中,[groups]下可以配置組信息,即將幾個人加入到一個組中。[/foo/bar]下添加人員的規則表示誰可訪問/foo/bar路徑下的信息。我們在[/foo/bar]下添加
[/]
admin = rw
至此,我們配置了admin的賬號,該賬號具有根目錄下的所有文件的讀寫操作權限。
3、創建我們的項目
在D:"test下新建project文件夾,在project下新建trunk,tags,branches三個文件夾,打開命令行,將目錄轉到D:\test下,運行svn import –m addproject --username admin --password admin --config-dir /project svn://localhost回車顯示如下:
Adding project
Adding project/trunk
Adding project/branches
Adding project/tags
Committed revision 1.
表示我們的項目project創建成功。
這里說明下trunk、tags、branches三個文件夾的作用:
trunk:表示開發時版本存放的目錄,即在開發階段的代碼都提交到該目錄上。
branches:表示發布的版本存放的目錄,即項目上線時發布的穩定版本存放在該目錄中。
tags:表示標簽存放的目錄。
在這需要說明下分三個目錄的原因,如果項目分為一期、二期、三期等,那么一期上線時的穩定版本就應該在一期完成時將代碼copy到branches上,這樣二期開發的代碼就對一期的代碼沒有影響,如新增的模塊就不會部署到生產環境上。而branches上的穩定的版本就是發布到生產環境上的代碼,如果用戶使用的過程中發現有bug,則只要在branches上修改該bug,修改完bug后再編譯branches上最新的代碼發布到生產環境即可。tags的作用是將在branches上修改的bug的代碼合并到trank上時創建個版本標識,以后branches上修改的bug代碼再合并到trunk上時就從tags的version到branches最新的version合并到trunk,以保證前期修改的bug代碼不會在合并。
至此我們就可以使用svn來管理我們的代碼了。
posted on 2008-08-02 22:16
囧囧之豬 閱讀(1098)
評論(0) 編輯 收藏 所屬分類:
tools