SVN 独立服务端部署与客户端使用指南(CentOS/Rocky 9.5 + Windows)

本文详细介绍在 Rocky Linux 9.5 上独立部署 SVN 服务端,并在 Windows 上使用 TortoiseSVN 客户端进行版本控制的完整流程,包括 仓库创建、权限管理、文件同步、账号密码管理。


一、服务端安装与仓库初始化

1. 安装 SVN

复制代码
sudo dnf install subversion -y

验证安装:

复制代码
svn --version

2. 创建仓库目录

复制代码
sudo mkdir -p /var/svn
sudo chown -R svnuser:svnuser /var/svn
sudo chmod -R 770 /var/svn

svnuser 是你用来运行 SVN 服务的系统用户,可以用 adduser svnuser 创建。


3. 初始化仓库

复制代码
svnadmin create /var/svn/project1

目录结构:

复制代码
/var/svn/project1
├── conf
│   ├── authz
│   ├── passwd
│   └── svnserve.conf
├── db
├── hooks
├── locks
├── format
└── README.txt

配置文件均在 conf 目录下。


4. 配置 svnserve

编辑 /var/svn/project1/conf/svnserve.conf:

复制代码
[general]
anon-access = none        # 禁止匿名访问
auth-access = write       # 允许授权用户写操作
password-db = passwd      # 指定密码文件
authz-db = authz          # 指定权限文件
realm = Project1 SVN

取消注释相关行即可。


5. 配置账号与权限

创建账号

编辑 /var/svn/project1/conf/passwd:

复制代码
[users]
admin = 123456
dev1 = 123456
dev2 = 123456
配置权限

编辑 /var/svn/project1/conf/authz:

复制代码
[groups]
admins = admin
devs = dev1,dev2

[/]
@admins = rw
@devs = r
  • rw:读写权限
  • r:只读权限
  • 空白表示禁止访问

6. 启动 SVN 服务

后台运行并指定仓库根目录:

复制代码
svnserve -d -r /var/svn

验证服务是否启动:

复制代码
ss -lntp | grep 3690

默认监听端口 3690。


7. systemd 管理方式(推荐)

创建 /etc/systemd/system/svnserve.service:

复制代码
[Unit]
Description=Subversion Server
After=network.target

[Service]
Type=forking
ExecStart=/usr/bin/svnserve -d -r /var/svn
ExecStop=/usr/bin/pkill svnserve
Restart=always

[Install]
WantedBy=multi-user.target

加载并启动服务:

复制代码
systemctl daemon-reload
systemctl enable svnserve
systemctl start svnserve
systemctl status svnserve

开放防火墙端口:

复制代码
firewall-cmd --permanent --add-port=3690/tcp
firewall-cmd --reload

8. 密码重置

直接编辑 /var/svn/project1/conf/passwd:

复制代码
admin = NewPassword2026

无需重启服务,下一次客户端连接即可生效。


二、Windows 客户端 TortoiseSVN 配置与使用

1. 下载与安装

访问 TortoiseSVN 官网,下载并安装 Windows 客户端。


2. 检出(Checkout)仓库

  1. 在 Windows 上新建文件夹(如 D:\Projects\project1)。

  2. 右键文件夹 → SVN Checkout。

  3. 填写仓库 URL:

    svn://服务器IP/project1

  4. 输入用户名和密码,点击 OK。


3. 文件同步操作

  • 提交文件(Commit)
    右键文件 → SVN Commit → 输入提交说明 → 提交。
  • 更新文件(Update)
    右键文件夹 → SVN Update → 获取最新版本。
  • 查看历史日志(Show Log)
    右键文件夹 → TortoiseSVN → Show log。

4. 文件夹共享管理

可以在服务器 /var/svn 下创建共享目录:

复制代码
mkdir /var/svn/shared
svn import /var/svn/shared svn://服务器IP/project1/shared -m "导入共享目录"

客户端即可访问共享资源。


三、服务端常用命令总结

操作 命令
启动服务 systemctl start svnserve
停止服务 systemctl stop svnserve
重启服务 systemctl restart svnserve
查看状态 systemctl status svnserve
设置开机自启 systemctl enable svnserve
关闭开机自启 systemctl disable svnserve
相关推荐
阿尼卡~6 小时前
VS Code 配置 C 语言开发环境(Windows 10/11):从 GCC 安装到运行、断点调试,一篇搞定
c语言·开发语言·windows
liyi_hz200810 小时前
O2OA(翱途) V10.1 即将发布|功能再升级,安全再加固,协同更高效!
java·javascript·windows·开源软件
七牛云行业应用12 小时前
DeepSeek Harness(dsh)安装完整指南:Windows、macOS、Linux 三平台 + 桌面端与 Web 端全覆盖
linux·windows·macos·ai·ai编程
起个名字都难啊15 小时前
visual studio C/C++空项目修改为CUDA c++
c++·windows·visual studio
xixiaoyunya16 小时前
轻量级 Windows 文件共享方案实测:零配置部署私有网盘,兼容全平台浏览器访问
windows
垆边人似月.17 小时前
第二篇:列表、字典与流程控制 / Lists, Dictionaries & Control Flow
windows
呉師傅18 小时前
Win7剪切文件变成复制文件如何修改【资源管理器异常类故障】
运维·网络·windows·电脑
略略略咯咯18 小时前
33333
开发语言·windows·python
2501_9159184118 小时前
Windows 上开发 React Native iOS,真机调试、Fast Refresh 与打包 ipa
windows·vscode·react native·ios·个人开发·swift·敏捷流程
LannyChung1 天前
PowerShell 下 git log 中文乱码的完整排查与解决
windows·git