系统环境:centos7.2

第一步:通过yum命令安装svnserve,命令如下:

yum -y install subversion

此命令会全自动安装svn服务器相关服务和依赖,安装完成会自动停止命令运行

若需查看svn安装位置,可以用以下命令:

rpm -ql subversion

第二步:创建版本库目录(此仅为目录,为后面创建版本库提供存放位置)

选择在var路径下创建版本库,当前处于根目录下,一次性创建如下:

mkdir /var/svnrepos

第三步:创建svn版本库

在第二步建立的路径基础上,创建版本库,命令如下:

svnadmin create /var/svnrepos/xxxx  

(xxxx为你预期的版本库名称,可自定义)

创建成功后,进入xxxx目录下

cd /var/svnrepos/xxxx

进入目录,可以看见如下文件信息:

total
drwxr-xr-x root root May : conf
drwxr-sr-x root root May : db
-r--r--r-- root root May : format
drwxr-xr-x root root May : hooks
drwxr-xr-x root root May : locks
-rw-r--r-- root root May : README.txt

第四步:配置修改

进入已经创建好的版本库目录下,也就是前文说创建的xxxx,进入conf

cd /var/svnrepos/xxxx/conf

conf目录下,一共存放三份重要的配置文件,如下:

total
-rw-r--r-- root root May : authz
-rw-r--r-- root root May : passwd
-rw-r--r-- root root May : svnserve.conf

authz:负责账号权限的管理,控制账号是否读写权限

passwd:负责账号和密码的用户名单管理

svnserve.conf:svn服务器配置文件

1.编辑 authz 文件(注意:[/]也是必须的)

[/]:表示根目录,即 /var/svnrepos

luo = rw:表示用户luo对根目录具有读写权限。

2.编辑 passwd 文件

如上所示,用户名为:luo,认证密码为:luo123456

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  -j ACCEPT

保存退出

systemctl restart iptables.service #重启防火墙使配置生效

六:启动svn服务器

svnserve -d -r /var/svnrepos

启动成功后,可用ps -aux查看服务启动是否成功

ps -ef | grep 'svnserve'

七:客户端访问svn服务器

在windows客户端,输入地址:svn://ip地址:3690/xxxx   (iP地址为你linux的ip,xxxx为前文创建的版本库名称,3690为svn默认端口)

弹出输入用户名和密码,输入即可访问

或者在linux服务器输入命令测试:

svn co svn://ip地址:3690/xxxx

如下为例子:

遇到的问题小结:

问题1:执行svn命令:svn co svn://ip地址:3690/xxxx报错如下

这是因为修改svnserve.conf时,打开注释时,配置的前面有空格,应该顶格写。修改后即可

问题2:输入账号密码后,提示 svn: Authorization failed解决办法

把authz 文件 [/] 改为 [\] 试试

原文地址:https://www.cnblogs.com/-mrl/p/8980244.html

最新文章

  1. Divide and Conquer:River Hopscotch(POJ 3258)
  2. Python学习路程day8
  3. java length size
  4. Cocos2d-x解析XML文件,解决中文乱码
  5. PhoneGap与WAP站静态化
  6. 每天进步一点点——Linux系统时间来处理
  7. ORACLE SEQUENCE 介绍
  8. Not able to reset SmartRF04DD
  9. 把windows的bat用好了,也很不错
  10. 分离你的spring配置文件,让结构更清晰
  11. [算法题] Search in Rotated Sorted Array ii
  12. angular4.0单个标签不能同时使用ngFor和ngIf
  13. java中的out of memory
  14. OPUS/SILK/SPEEX 音频编码比较
  15. Codeforces555 B. Case of Fugitive
  16. Python实现下载文件的三种方法
  17. 对弈的Python学习笔记
  18. console.log等不能打印全部数据/信息
  19. 读取 XML 数据时,超出最大字符串内容长度配额 (8192)
  20. 【Android】将Xamarin For VS升级为4.0.1.145版

热门文章

  1. 调试用Chrome浏览器
  2. AtCoder Beginner Contest 146解题报告
  3. HDU - 6643: Ridiculous Netizens(点分治+依赖背包+空间优化)
  4. LwIP应用开发笔记之八:LwIP无操作系统HTTP客户端
  5. list数组排序 Collections 按Date时间降序排列
  6. Servlet & spring -网络事务处理单元
  7. Nuxt项目支持import写法的最新解决方案
  8. Trolley slow
  9. ent 基本使用十 数据库迁移
  10. 7.学习springmvc的异常处理