1、检查环境
(1)查看系统下有没有安装过或有安装过老版本的SVN
如果没安装过则什么都不显示rpm -qa subversion
(2)如果有老版本先运行一下,删除老版本
yum -y remove subversion
2、下载安装
(1)下载安装
通过yum命令安装svnserve,此命令 会全自动安装svn服务器相关服务和依赖 ,安装完成会自动停止命令运行yum -y install subversion
3、创建版本库
(1)创建版本库目录
mkdir -p /home/svn
(2)创建svn版本库
svnadmin create /home/svn/svns
cd /home/svn/svns
conf:是这个仓库配置文件(仓库用户访问账户,权限)
format:是一个文本文件,里边只放了一个整数,表示当前文件库配置的版本号
hooks:放置hook脚步文件的目录
locks:用来放置subversion的db锁文件和db_logs锁文件的目录,用来追踪存取文件库的客户端
4、配置修改
- conf:是这个仓库配置文件(仓库用户访问账户,权限)
- format:是一个文本文件,里边只放了一个整数,表示当前文件库配置的版本号
- hooks:放置hook脚步文件的目录
- locks:用来放置subversion的db锁文件和db_logs锁文件的目录,用来追踪存取文件库的客户端
(1)修改svnserve.conf
vim svnserve.conf
原始文件内容都被注释掉的,我们只需要去掉指定内容前注释即可,如下:
[general]
anon-access = read 【控制非鉴权用户访问版本库的权限】
auth-access = write 【控制鉴权用户访问版本库的权限】
password-db = passwd 【指定用户名口令文件名,即访问时要输用户名和密码】
authz-db = authz
realm = /MyBackup/svn/MyBackups 【指定版本库的认证域,即在登录时提示的认证域名称,改成自己的版本库】
(2)修改authz文件信息,添加用户
vim authz
在文件内容的末尾,添加如下:
[/]
nwow = rw
(3)修改passwd文件信息,用户添加密码
vim passwd
例如:admin = 123@qwe
5、开启防火墙
多数情况下服务器安装完成,配置完成后,无法连接svn服务器,均是防火墙问题
配置防火墙端口
首先要明确CentOS7的默认防火墙为firewallD。subversion的默认端口为3690,如果没有打开会报错:
1: sudo firewall-cmd --permanent --add-service=telnet
2: sudo firewall-cmd --permanent --add-port=3690/tcp
3: sudo firewall-cmd --reload
centOS 7 防火墙开启、关闭与查看状态:
systemctl start firewalld
systemctl stop firewalld
systemctl status firewalld
6、启动svn服务器
# -d : 守护进程 -r : svn数据根目录
svnserve -dr /home/svn
#用root权限启动
查看SVN服务:
ps aux|grep svnserve
#默认端口为:3690
设置开机启动:
1:找到/lib/systemd/system/svnserve.service文件
2:修改/etc/sysconfig/svnserve文件中$OPTIONS参数
3:设置开机启动,systemctl enable svnserve.service
设置开机启动后就可以按下面的方式开启或停止服务了
systemctl start svnserve.service
systemctl stop svnserve.service
————————————————
版权声明:本文为CSDN博主「Windyº」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_42096792/article/details/119376681
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性