天天看點

在伺服器上部署svn,并連接配接用戶端

在伺服器部署svn

  • 先檢查是否安裝了svn,如果有就解除安裝掉
sudo apt-get remove --purge subversion
           
  • 安裝svn
sudo apt-get install subversion
           
  • 建立svn版本庫

1.建立放svn版本庫的檔案夾

mkdir /var/svn/svnrepos
           

2.在上面的路徑下建立版本庫

svnadmin create /var/svn/svnrepos/xxxx   (xxxx為版本庫名稱,可自定義)
           
  • 修改配置

    進入版本庫的conf

cd /var/svn/svnrepos/xxxx/conf
           

conf下有3個檔案

authz:負責賬号權限的管理,控制賬号是否讀寫權限

passwd:負責賬号和密碼的使用者名單管理

svnserve.conf:svn伺服器配置檔案

1.配置passwd

vi passwd
           

将賬号和密碼資訊追加到檔案中即可,格式為:

賬号 = 密碼

例如:admin = 123456

注意 “=” 前後要有空格

2.配置authz

vi authz 
           
[/]
admin = rw
*=
           

[/] ---------------------> 倉庫下所有檔案

admin = rw----------------->可讀可寫

*= ----------------------->其他使用者沒有權限

3.配置svnserve.conf

vi svnserve.conf
           

打開下面的5個注釋

anon-access = read #匿名使用者可讀

auth-access = write #授權使用者可寫

password-db = passwd #使用哪個檔案作為賬号檔案

authz-db = authz #使用哪個檔案作為權限檔案

realm = /var/svn/svnrepos/xxxx # 認證空間名,改成自己版本庫所在目錄

注意:

要删除#和代碼前的空格

  • 啟動和停止服務
svnserve -d -r /home/svn(啟動)
killall svnserve(停止) 
           

上述啟動指令中,-d表示守護程序, -r 表示在背景執行。

檢視服務是否啟動

[[email protected] conf]# ps -ef|grep svnserve
root      4908     1  0 21:32 ?        00:00:00 svnserve -d -r /home/svn
root      4949  4822  0 22:05 pts/0    00:00:00 grep svnserve
           

停止還可以采用殺死程序的方式:

[[email protected] conf]# kill -9 4908
           

用戶端連接配接服務

下載下傳rapidsvn

sudo apt-get install rapidsvn
           

點選書簽->右鍵->添加已存在的文檔庫

在伺服器上部署svn,并連接配接用戶端

輸入URL

svn://(ip位址):3690(預設端口)/(你的版本庫名字)

設定服務自啟動

在/etc/init.d 路徑下建立腳本

vi subversion
           
#!/bin/sh
 
test -f /usr/bin/svnserve || exit 0
 
# 這裡是svnserve執行的參數,/var/svn/svnrepos改為你自己的版本庫位址
OPTIONS="-d -T -r /var/svn/svnrepos"
 
case "$1" in
	start)
		echo -n "Starting subversion daemon:"
		echo -n " svnserve"
		# 這裡的root:root為member:group,即使用者:組名,改為适合你自己的
		start-stop-daemon --start --quiet --oknodo --chuid root:root --exec /usr/bin/svnserve -- $OPTIONS
		echo "."
    	;;
 
	stop)
		echo -n "Stopping subversion daemon:"
		echo -n " svnserve"
		start-stop-daemon --stop --quiet --oknodo --exec /usr/bin/svnserve
		echo "."
		;;
 
	reload)
		;;
 
	force-reload)
	$0 restart
		;;
 
	restart)
	$0 stop
	$0 start
		;;
 
	*)
		echo "Usage: /etc/init.d/subversion (start|stop|reload|restart)"
		exit 1
		;;
 
esac

           

添加執行屬性

chmod +x /etc/init.d/subversion
           

添加啟動項

update-rc.d  -f  subversion defaults
           

在centos系統下設定

1、編輯rc.local檔案

vi /etc/rc.d/rc.local
           

2、加入如下啟動指令

/usr/bin/svnserve -d -r /home/svn
           

注意:

我們在用終端操作的時候,可以直接使用以下指令啟動SVN:

svnserve -d -r /home/svn

但是在/etc/rc.d/rc.local 檔案中必須寫上完整的路徑!

不知道svnserve安裝到哪裡了?

可以使用 whereis 指令查找一下:

可能出現的問題

1.rapidsvn用戶端的曆史記錄無法檢視

出現Item is not readable 的錯誤

解決辦法

修改 svnserve.conf檔案

将anon-access = read 修改成

anon-access = none

繼續閱讀