centOS7下SVN的安裝和使用

1. 安裝

CentOS通過yum安裝subversion。

# yum install subversion

 subversion安裝在/bin目錄:

# which svnserve     #查看目錄命令/usr/bin/svnserve

檢查一下subversion是否安裝成功。不要使用1.8版本

# svnserve --version

svnserve, version 1.7.14 (r1542130)


2. 建立版本庫

subversion默認以/var/svn作爲數據根目錄,可以通過/etc/sysconfig/svnserve修改這個默認位置。

# vim /etc/sysconfig/svnserve

文件內容

OPTIONS="-r /var/svn"

可修改


使用svnadmin建立版本庫svntest。

# mkdir -p /var/svn/svntest            //遞歸創建多個目錄

# svnadmin create /var/svn/svntest


# ll /data/svn/svntest                             //查看目錄中內容

drwxr-xr-x. 2 root root  51 Nov 10 14:42 conf

drwxr-sr-x. 6 root root 4096 Nov 10 14:42 db

-r--r--r--. 1 root root    2 Nov 10 14:42 format

drwxr-xr-x. 2 root root 4096 Nov 10 14:42 hooks

drwxr-xr-x. 2 root root  39 Nov 10 14:42 locks

-rw-r--r--. 1 root root  229 Nov 10 14:42 README.txt


3. 配置

cd /var/svn/svntest

a、編輯用戶文件passwd,新增兩個用戶:admin和guest。

# vim conf/passwd

[users]

admin = admin

guest = guest

b、編輯權限文件authz,用戶admin設置可讀寫權限,guest設置只讀權限。

# vim conf/authz

[/]

admin = rw

guest = r

c、編輯svnserve.conf:

# vim conf/svnserve.conf

[general]anon-access = none                     #控制非鑑權用戶訪問版本庫的權限

auth-access = write                    #控制鑑權用戶訪問版本庫的權限

password-db = passwd                   #指定用戶名口令文件名

authz-db = authz                       #指定權限配置文件名

//realm = svntest             #指定版本庫的認證域,即在登錄時提示的認證域名稱    //測試不需要

 4. SVN服務

啓動SVN服務。

# systemctl start svnserve.service

檢查服務是否啓動成功。

# ps aux | grep svnroot      16349  0.0  0.1 162180   900 ?        Ss   15:01   0:00 /usr/bin/svnserve --daemon --pid-file=/run/svnserve/svnserve.pid -r /opt/svn

通過netstat可以看到SVN打開了3690端口

# netstat -tnlpProto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    tcp        0      0 0.0.0.0:3690             0.0.0.0:*               LISTEN      16349/svnserve

設置成開機啓動。

# systemctl enable svnserve.service


5. 更改防火牆設置

大坑,注意阿里雲要開相應端口3690

# vim /etc/sysconfig/iptables

添加一下兩行   vim操作 yy p

-A INPUT -m state –state NEW -m tcp -p tcp –dport 3690 -j ACCEPT

-A OUTPUT -m state –state NEW -m tcp -p tcp –dport 3690 -j ACCEPT     //不需要

然後退出編輯,重啓防火牆

查看   # iptables -L -n

# service iptables restart          //這是centOS6 的命令

# /bin/systemctl restart iptables.service

6. 客戶端測試

客戶端可以通過TortoriseSVN測試。


Linux下客戶端使用SVN

將文件checkout到本地目錄svn666

svn checkout svn://127.0.0.1   ./svn666

有修改的時候

# svn add *                                                //添加文件

# svn commit -m '這是註釋內容'                //提交

# svn update                                              //更新


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