Linux 安裝svn服務器
下載Subversion
盡管Subversion是apache的一個項目,然而Apache沒有為任何系統單獨開發安裝的二進制文件,下面的鏈接是任何版本的Linux安裝svn的方式。
Linux安裝Subversion鏈接 ,使用包管理命令例如,YUM和APT包管理安裝軟件。
windows安裝鏈接 ,下載之後直接點擊安裝即可(需要記住安裝路徑)。
安裝Subversion
Linux 安裝使用以下命令進行安裝:
sudo yum install subversion
apt-get install subversion
windows安裝,點擊下載的安裝包,並設置相應的安裝路徑。
檢驗subversion是否成功,輸入以下命令就可以看到安裝的svn版本。
svnserve --version
windows安裝之後檢測是否安裝成功,需要在環境變量配置中添加相應的安裝包的路徑。
開啟Subversion服務
Linux安裝Subversion的時候就自動創建了一個啟動服務的文件腳本,路徑為 /etc/init.d/svnserve。這個腳本可以用來開啟Subversion服務。Linux環境下開啟Subversion服務的命令如下:
sudo /etc/init.d/svnserve start
windows的話直接在控制面板中進行該服務的開啟。
創建SVN版本庫目錄
在linux中創建版本庫目錄的命令如下:
mkdir -p REPOS_PATH
REPOS_PATH 代表的是創建版本庫目錄的路徑。
比如:
mkdir –p /ciroot/subversion/repository
在windows 下創建版本庫目錄的命令如下:
mkdir REPOS_PATH
比如:
mkdir C:\ciroot\subversion\repository
創建SVN版本庫
接著通過上一步創建的版本庫目錄進行SVN版本庫創建。在linux下創建版本庫的命令如下:
svnadmin create /ciroot/subversion/repository
在windows下創建版本庫的命令如下:
svnadmin create C:\ciroot\subversion\repository
執行後,自動建立repositories庫,查看/opt/svn/repositories文件夾包含了conf,db,format,hooks,locks,README.txt等文件,說明一個SVN庫已經建立。
通過svn客戶端訪問svn版本是有文件權限以及用戶訪問權限控制的,下面通過配置文件來配置訪問權限。默認用戶具有只讀權限。
配置SVN版本庫
下面為了能夠通過SVN客戶端進行版本庫的訪問,通過進入REPOS_PATH
/conf/目錄下的文件來進行配置,配置方式如下。註:REPOS_PATH 是上面創建版本庫目錄。
進入到conf目錄下:
cd /ciroot/subversion/repository/conf
進入該目錄,發現有authz、 passwd、svnserve.conf 。
authz文件是權限控制文件
passwd是帳號密碼文件
svnserve.conf SVN服務配置文件
進入配置文件中設置賬號密碼
輸入如下命令進入賬號密碼設置。
vi passwd
在[users]塊中添加用戶和密碼,格式:帳號=密碼,如test=123456
設置權限
輸入如下命令進行權限的配置。
vi authz
設置哪些用戶可以訪問哪些目錄,向authz文件追加以下內容:
[/] test=rw //給該用戶訪問所有庫的權限
或
[repository:/project] //repository庫的根目錄權限
test=rw
/ 表示根目錄及以下,根目錄是svnserve啟動時指定的,我們指定的是/ciroot/subversion;/ 就是指對全部版本庫都具有權限
repository:/ 表示對庫repository的根目錄設置權限
PS:
* 權限配置文件中出現的用戶名必須已在用戶配置文件中定義。
* 對權限配置文件的修改立即生效,不必重啟svn。
svnserve.conf文件配置
輸入如下命令,對svnserve.conf進行配置
vi svnserve.conf
[general] #匿名訪問的權限,可以是read,write,none,默認為read anon-access=none #使授權用戶有寫權限 auth-access=write #密碼數據庫的路徑 password-db=passwd #訪問控制文件 authz-db=authz #認證命名空間,subversion會在認證提示裏顯示,並且作為憑證緩存的關鍵字 realm=/ciroot/subversion/repository
這裏註意各標簽不能錯,也不能有重復,不然無法連接。
啟動svn版本庫
# svnserve -d -r /ciroot/subversion/repository
輸入如下命令檢查svn是否啟動成功。
ps -ef|grep svn|grep -v grep
停止和啟動svn
# killall svnserve //停止 # svnserve -d -r /opt/svn/repositories // 啟動
最後通過安裝tortoisesvn 客戶端進行驗證。
Linux 安裝svn服務器