豌豆Ai站群搜索引擎系统 V.25.10.25 网址:www.wd.chat

🗣 Wd提问: 本地svn服务器搭建

🤖 Ai回答:
在本地搭建 SVN(Subversion)服务器是一个非常实用的需求,尤其适用于小型团队或个人进行版本控制。以下是详细的 Windows 和 Linux(Ubuntu/CentOS) 本地 SVN 服务器搭建步骤。

✅ 一、SVN 服务器简介

SVN 是一个集中式版本控制系统,由一个中央服务器存储所有版本历史,客户端通过 `svn checkout`、`commit` 等命令与服务器交互。

搭建方式有三种:
1、svnserve(推荐用于本地/内网)——轻量、简单
2、Apache + mod_dav_svn —— 支持 HTTP/HTTPS,适合公网或复杂权限
3、文件协议(file://) —— 仅限本地访问,不推荐多人协作

本教程推荐使用 svnserve,适合本地开发、内网使用。

✅ 二、Windows 系统搭建 SVN 服务器

1、下载并安装 SVN

官网下载:https://subversion.apache.org/packages.html
推荐使用:TortoiseSVN(含命令行工具)或 SlikSVN

推荐下载 SlikSVN(纯命令行版):
🔗 https://sliksvn.com/en/download/

安装后,确保 `svn` 和 `svnserve` 命令在系统 PATH 中(命令行输入 `svn version` 验证)。

2、创建版本库(Repository)

打开 命令提示符(CMD) 或 PowerShell,执行:

bash
mkdir D:\svn-repos
svnadmin create D:\svn-repos\myproject

这会在 `D:\svn-repos\myproject` 目录下创建一个空的 SVN 仓库。

3、配置用户和权限

进入仓库配置目录:

bash
cd D:\svn-repos\myproject\conf

编辑三个文件:

✅ `svnserve.conf`

ini
[general]
anon-access = none 禁止匿名访问
auth-access = write 认证用户可写
password-db = passwd 指定密码文件
authz-db = authz 指定权限文件
realm = My SVN Repository 认证域(可自定义)

⚠️ 删除前面的 `` 和空格,确保配置生效!

✅ `passwd`(添加用户)

ini
[users]
admin = 123456
user1 = abc123
user2 = def456

✅ `authz`(设置目录权限,可选)

ini
[groups]
admin_group = admin
dev_group = user1, user2

[/]
@admin_group = rw
* = r

[myproject:/trunk]
@dev_group = rw
* =

说明:`/` 表示根目录,`myproject:/trunk` 表示仓库内 trunk 目录

4、启动 svnserve 服务

bash
svnserve -d -r D:\svn-repos listen-port 3690

`-d`:后台守护进程模式
`-r`:指定根目录(这样访问时路径为 `svn://ip/myproject`)
`listen-port`:端口(默认 3690)

✅ 测试:在另一台机器或本机打开命令行:

bash
svn info svn://127.0.0.1/myproject


应该提示输入用户名密码。

5、设置开机自启(可选)

创建批处理文件 `start_svn.bat`:

bat
@echo off
cd /d D:\svn-repos
svnserve -d -r D:\svn-repos listen-port 3690

然后通过“任务计划程序”设置开机启动该批处理。

✅ 三、Linux 系统搭建 SVN 服务器(Ubuntu/CentOS)

1、安装 SVN

Ubuntu/Debian:

bash
sudo apt update
sudo apt install subversion svnserve

CentOS/RHEL/Fedora:

bash
CentOS 7/8
sudo yum install subversion

CentOS 9 / Fedora
sudo dnf install subversion

验证安装:

bash
svnserve version

2、创建版本库

bash
sudo mkdir -p /var/svn
sudo svnadmin create /var/svn/myproject

3、配置用户和权限

bash
cd /var/svn/myproject/conf

编辑 `svnserve.conf`:

ini
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = My Linux SVN Server

编辑 `passwd`:

ini
[users]
admin = password123
developer = devpass

编辑 `authz`(可选):

ini
[groups]
admin = admin
dev = developer

[/]
@admin = rw
* = r

[myproject:/trunk]
@dev = rw
* =

4、启动 svnserve

bash
sudo svnserve -d -r /var/svn listen-port 3690

`-r /var/svn` 表示仓库根目录,访问地址为 `svn://ip/myproject`

5、设置开机自启(systemd)

创建服务文件:

bash
sudo nano /etc/systemd/system/svnserve.service

内容如下:

ini
[Unit]
Description=Subversion Server
After=network.target

[Service]
Type=forking
User=svn
Group=svn
ExecStart=/usr/bin/svnserve -d -r /var/svn listen-port 3690
Restart=always

[Install]
WantedBy=multi-user.target

⚠️ 如果没有 `svn` 用户,先创建:

bash
sudo adduser system group no-create-home svn
sudo chown -R svn:svn /var/svn


启用并启动服务:

bash
sudo systemctl daemon-reload
sudo systemctl enable svnserve
sudo systemctl start svnserve
sudo systemctl status svnserve

6、防火墙开放端口(如需远程访问)

bash
Ubuntu
sudo ufw allow 3690

CentOS
sudo firewall-cmd permanent add-port=3690/tcp
sudo firewall-cmd reload

✅ 四、客户端连接测试

在任意机器上(Windows/Linux/Mac):

bash
svn checkout svn://<服务器IP/myproject

输入用户名和密码即可。

示例:

bash
svn checkout svn://192.168.1.100/myproject


推荐客户端工具:

| 平台 | 推荐工具 |

| Windows | TortoiseSVN(右键集成) |
| macOS | Cornerstone、SmartSVN |
| Linux | RabbitVCS、Command Line |
| IDE | IntelliJ IDEA / Eclipse / VS Code(需插件) |

✅ 五、常见问题与技巧

| 问题 | 解决方案 |

| `svn: E170001: Authorization failed` | 检查 `svnserve.conf` 是否取消了 `` 注释,权限是否正确 |
| `svnserve: Can't bind server socket` | 端口被占用,换端口(如 3691)或杀掉进程 `killall svnserve` |
| 无法远程访问 | 检查防火墙、服务器是否监听 `0.0.0.0`(默认就是) |
| 想用 HTTP 访问? | 使用 Apache + mod_dav_svn(更复杂,适合公网) |
| 备份仓库 | 直接复制整个 `myproject` 文件夹即可(热备份) |

✅ 六、安全建议

不要使用 `anon-access = read`(公开可读)
密码不要用弱密码
定期备份 `/var/svn` 或 `D:\svn-repos`
尽量不要用 `file://` 协议多人访问(易损坏)

✅ 七、进阶:使用 Apache + mod_dav_svn(可选)

如果你希望支持 Web 浏览、HTTPS、LDAP 认证,可配置 Apache:

1、安装 Apache 和模块:
bash
sudo apt install apache2 libapache2-mod-dav-svn


2、编辑配置:
bash
sudo nano /etc/apache2/mods-available/dav_svn.conf


3、添加:
apache
<Location /svn
DAV svn
SVNParentPath /var/svn
AuthType Basic
AuthName SVN Repository
AuthUserFile /etc/subversion

Ai作答

📣 商家广告


星座

广东过滤器

广告招商

广告招商

贵阳用友软件


0

IP地址: 156.132.196.72

搜索次数: 0

提问时间: 2025-11-08 04:06:25

🛒 域名购买
yw.gs
m.tj.cn
67.plus
tc.gs
f.cq.cn
wosou.com.cn
wc.chat
85.chat
chang.net.cn
touwang.com.cn

❓️ 热门提问
服务器的集群
linux搭建ftp服务器
哥伦比亚vps
cn2云服务器
云手机免费版挂机
如何注册好域名
奇瑞香港上市
机柜品牌排行榜前十名
机柜玻璃
idc公司江西
豌豆Ai站群搜索引擎系统

🌐 域名评估
5a.jl.cn
jj.qh.cn
rt.chat
xa.xz.cn
pamv.cn
deepseek.shopping
bqjn.cn
h.qh.cn
pp.xj.cn
byd.ln.cn

⛏ 最新挖掘
凯里酸汤鱼
贵阳烤脑花
都匀毛尖茶
花溪牛肉粉
贵阳烤生蚝
贵阳烤豆腐
贵阳纸包鱼
贵阳特色菜

🖌 热门作画

🤝 关于我们:
豌豆Ai 域名 建站 站群 留痕 推广 评估 源码
开发Ai 工具 日记 价格 加盟 广告 流量 留言 联系

🗨 加入群聊
群

🔗 友情链接
贵阳净化车间  검색엔진  ai提问

🧰 站长工具
Ai工具  whois查询  搜索

📢 温馨提示:本站所有问答由Ai自动创作,内容仅供参考,若有误差请用“联系”里面信息通知我们人工修改或删除。

👉 技术支持:本站由豌豆Ai提供技术支持,使用的最新版:《豌豆Ai站群搜索引擎系统 V.25.10.25》搭建本站。

上一篇 77973 77974 77975 下一篇