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. 更改防火牆設置

 firewall-cmd --zone=public --add-port=3690/tcp --permanen

 systemctl restart firewalld.service

 

6. 客戶端測試

客戶端可以通過TortoriseSVN測試。

 

 

 

 

Linux下客戶端使用SVN

將文件checkout到本地目錄svn666

svn checkout svn://127.0.0.1 ./svn666

有修改的時候

# svn add * //添加文件

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

# svn update //更新


svn 設置開機啓動( CentOS7 )

vim /usr/lib/systemd/system/svnserve.service

[Unit]
Description=Subversion protocol daemon
After=syslog.target network.target

[Service]
Type=forking
EnvironmentFile=/etc/sysconfig/svnserve
ExecStart=/usr/bin/svnserve --daemon --pid-file=/run/svnserve/svnserve.pid $OPTIONS

[Install]
WantedBy=multi-user.target

然後將服務設置爲可用
              systemctl enable svnserve.service  

查看服務列表狀態
              systemctl list-units --type=service

重啓服務器,查看svn開啓狀態
              ps -aux | grep 'svn'

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