本文是在CentOS中采用yum安裝方式。優點:簡單,一鍵安裝,不用手動配置環境變量等。缺點:安裝位置為yum默認,比如我們公司服務器上安裝軟件有自己的規定,一般會采用壓縮包安裝。
以下是我在CentOS7.2(阿里雲服務器)下部署方式,安裝步驟如下:
(注 : 紅色標記為shell 命令)
一、yum安裝subversion
1. 安裝subversion yum install subversion
2. 查看安裝版本,檢查安裝是否成功 svnserve --version ,我裝的版本為 1.7.14
3. 查看安裝位置 rpm -ql subversion
二、創建版本庫
1.創建用於存放版本庫的目錄,比如我准備在/usr/local/blue/svn/Code下創建版本庫 mkdir -p /usr/local/blue/svn/Code
2.創建svn版本庫,指定為剛才創建的目錄 svnadmin create /usr/local/blue/svn/Code
3.創建完后,版本庫目錄下會生成一些文件,進入conf目錄下。conf目錄中authz文件是權限控制文件,passwd是帳號密碼文件,svnserve.conf是SVN服務配置文件
4.修改passwd文件,加入用戶,格式就是“用戶名=密碼”,如: admin = 123
5.修改authz文件,加入用戶權限:
[/]
admin = rw
這就表示admin用戶對版本庫根目錄有讀寫權限(即最高權限了),權限配置方式在authz文件注釋中有詳細說明
6.svnserve.conf里面常用的配置有設置匿名用戶(默認可讀)、授權用戶(默認讀寫)的讀寫權限,以及指定賬號文件(默認passwd)、權限文件(默認authz)的路徑等。看起來應該默認值就夠了,但實際使用發現還是得手動把相關注釋打開,不知道是什么原因。
7.啟動svn版本庫 svnserve -d -r /usr/local/blue/svn/
其中,-r的作用是設置根目錄路徑,比如我這樣設置后在訪問時輸入svn://x.x.x.x/就會直接到我的svn目錄下(當然在svn目錄下是找不到版本庫的),如果想訪問版本庫則輸入svn://x.x.x.x/Code即可。
換句說話,如果啟動版本庫時命令為svnserve -d -r /usr/local/blue/svn/Code,則訪問svn://x.x.x.x/就能直接到版本庫內。
三、常見問題
1.注意打開端口的訪問權限。svn服務的默認端口為3690,比如我部署在阿里雲服務器上,必須先在阿里雲控制台打開3690端口的外部訪問權限。
2.關閉svn服務的方式是殺掉進程,kill pid或者pkill svnserve