一.搭建环境:
VMware16 + Xshell7+Xftp7+Centos7
第一步:通过yum命令安装svnserve,命令如下:
yum install -y subversion
此命令会全自动安装svn服务器相关服务和依赖,安装完成会自动停止命令运行
执行后的结果:
perl-parent.noarch 1:0.225-244.el7
perl-podlators.noarch 0:2.5.1-3.el7
perl-threads.x86_64 0:1.87-4.el7
perl-threads-shared.x86_64 0:1.43-6.el7
subversion-libs.x86_64 0:1.7.14-16.el7 trousers.x86_64
0:0.3.14-2.el7Complete! [root@xuhangCentos7 /]#
查看svn安装位置,可以用以下命令:
/usr/share/doc/subversion-1.7.14/hook-scripts/verify-po.py
/usr/share/doc/subversion-1.7.14/mod_authz_svn-INSTALL
/usr/share/doc/subversion-1.7.14/xslt
/usr/share/doc/subversion-1.7.14/xslt/svnindex.css
/usr/share/doc/subversion-1.7.14/xslt/svnindex.xsl
/usr/share/emacs/site-lisp/psvn-init.el
/usr/share/emacs/site-lisp/psvn.el
/usr/share/locale/de/LC_MESSAGES/subversion.mo
/usr/share/locale/es/LC_MESSAGES/subversion.mo
/usr/share/locale/fr/LC_MESSAGES/subversion.mo
/usr/share/locale/it/LC_MESSAGES/subversion.mo
/usr/share/locale/ja/LC_MESSAGES/subversion.mo
/usr/share/locale/ko/LC_MESSAGES/subversion.mo
/usr/share/locale/nb/LC_MESSAGES/subversion.mo
/usr/share/locale/pl/LC_MESSAGES/subversion.mo
/usr/share/locale/pt_BR/LC_MESSAGES/subversion.mo
/usr/share/locale/sv/LC_MESSAGES/subversion.mo
/usr/share/locale/zh_CN/LC_MESSAGES/subversion.mo
/usr/share/locale/zh_TW/LC_MESSAGES/subversion.mo
/usr/share/man/man1/svn.1.gz /usr/share/man/man1/svnadmin.1.gz
/usr/share/man/man1/svndumpfilter.1.gz
/usr/share/man/man1/svnlook.1.gz /usr/share/man/man1/svnrdump.1.gz
/usr/share/man/man1/svnsync.1.gz /usr/share/man/man1/svnversion.1.gz
/usr/share/man/man5/svnserve.conf.5.gz
/usr/share/man/man8/svnserve.8.gz
/usr/share/xemacs/site-packages/lisp/psvn.el [root@xuhangCentos7 /]#
第二步:创建版本库目录(mkdir /var/svnrepos 以此为目录,为后面创建版本库提供存放位置)
当前处于根目录下,一次性创建如下:
mkdir /var/svnrepos
第三步:创建svn版本库
在第二步建立的路径基础上,创建版本库,命令如下:
svnadmin create /var/svnrepos/xuhang
xuhang为你预期的版本库名称,可自定义)
创建成功后,进入xuhang目录下
cd /var/svnrepos/xuhang/
进入目录,可以看见如下文件信息:
[root@xuhangCentos7 svnrepos]# cd /var/svnrepos/xuhang/
[root@xuhangCentos7 xuhang]# ls conf db format hooks locks
README.txt
下面是这些目录的详细讲解
在这里插入图片描述
第四步:配置修改
进入已经创建好的版本库目录下,也就是前文说创建的xuhang,进入conf
cd /var/svnrepos/xuhang/conf
conf目录下,一共存放三份重要的配置文件,如下:
[root@xuhangCentos7 xuhang]# cd /var/svnrepos/xuhang/conf
[root@xuhangCentos7 conf]# ls authz passwd svnserve.conf
[root@xuhangCentos7 conf]#
authz:负责账号权限的管理,控制账号是否读写权限
passwd:负责账号和密码的用户名单管理
svnserve.conf:svn服务器配置文件
1.编辑 authz 文件(注意:[/]也是必须的)
[root@xuhangCentos7 conf]# vi authz
[/] 表示根目录,即 /var/svnrepos
xuhang = rw 表示用户xuhang对根目录具有读写权限。
2.编辑 passwd 文件
[root@xuhangCentos7 conf]# vi passwd
如上所示,用户名为:xuhang,认证密码为:123456
3.编辑 svnserve.conf 文件(注意:配置的前面不能有空格,一定要顶格写)
anon-access = none:表示禁止匿名用户访问。
auth-access = write:表示授权用户拥有读写权限。
password-db = passswd:指定用户名口令文件,即 passwd 文件。
authz-db = authz:指定权限配置文件,即 authz 文件。
realm = /var/svnrepos:指定认证域,即 /var/svnrepos 目录。
第五步:防火墙开启(这里以iptable防火墻为例)
多数情况下服务器安装完成,配置完成后,无法连接svn服务器,均是防火墙问题【注意:如果是阿里云,腾讯云的服务器,还需在安全组添加端口开启规则】
vi /etc/sysconfig/iptables
添加配置信息
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3690 -j ACCEPT
保存退出
systemctl restart iptables.service #重启防火墙使配置生效
六:启动svn服务器
svnserve -d -r /var/svnrepos
启动成功后,可用ps -aux查看服务启动是否成功
ps -ef | grep svnserve
[root@xuhangCentos7 conf]# ps -ef | grep ‘svnserve’ root 11320
1 0 13:29 ? 00:00:00 svnserve -d -r /var/svnrepos root
11322 1356 0 13:29 pts/0 00:00:00 grep --color=auto svnserve
[root@xuhangCentos7 conf]#
七:客户端访问svn服务器
在windows客户端,输入地址:svn://ip地址:3690/xuhang(iP地址为你linux的ip,xuhang为前文创建的版本库名称,3690为svn默认端口)
弹出输入用户名和密码,输入即可访问
或者在linux服务器输入命令测试:
示例:svn co svn://ip地址:3690/xxxx
[root@xuhangCentos7 conf]# svn co svn://192.168.238.128:3690/xuhang
关闭SVN 方法:
采取linux杀死进程的方式处理的
ps -ef | grep svnserve
这里 kill -9 进程号 杀死进程, 此4967为进程号