使用 VisualSVN Server (图形化界面,最简单推荐)
VisualSVN Server 是一个免费、开源的 Subversion 服务器包,它将 Apache 和 Subversion 整合在一起,提供了非常友好的图形化管理界面,是 Windows 平台上搭建 SVN 服务器的首选。

第一步:下载和安装
-
下载软件:
- 访问 VisualSVN Server 官方网站:https://www.visualsvn.com/server/
- 下载 "VisualSVN Server Installer"。
-
运行安装程序:
- 以 管理员身份 运行下载的安装文件。
- 在欢迎界面点击 "Next"。
-
接受许可协议:
勾选 "I accept the terms...",然后点击 "Next"。
(图片来源网络,侵删) -
选择组件:
- VisualSVN Server: 这是核心服务器组件,必须安装。
- VisualSVN Server Management Console: 这是一个管理控制台,强烈建议安装。
- 保持默认选择,点击 "Next"。
-
选择安装路径:
- 默认路径是
C:\Program Files\VisualSVN Server,建议不要修改,除非您有特殊需求,点击 "Next"。
- 默认路径是
-
配置服务选项:
- Service: 选择 "As a service for all users (recommended)",这样 SVN 服务器会在 Windows 启动时自动运行。
- Repository root path: 这是存放所有代码仓库的根目录,默认是
C:\Repositories,请确保这个路径所在的磁盘有足够的剩余空间。 - Port: 默认是
8443,如果这个端口被占用,可以修改为其他未被占用的端口。 - 点击 "Next"。
-
创建管理员账户:
- 这是设置第一个管理员账户的关键步骤。
- Username: 输入管理员用户名,
admin。 - Password: 输入一个强密码。
- Confirm password: 再次输入密码。
- Authentication: 选择 "Use same Windows account for authentication",这意味着这个账户将使用 Windows 的安全机制进行验证。
- 点击 "Next"。
-
准备安装:
- 检查摘要信息,确认无误后点击 "Install"。
- 安装过程会持续几分钟,请耐心等待。
-
完成安装:
- 安装成功后,会显示一个摘要页面,并有一个选项 "Run VisualSVN Server Management Console now"。
- 勾选它,然后点击 "Finish",这会自动打开管理控制台。
第二步:创建代码仓库
- 打开 VisualSVN Server Management Console。
- 在左侧的 "Repositories" 栏上右键点击,选择 "Create New Repository..."。
- 输入仓库名称,
MyProject。 - 访问权限:
- Create this repository as 'Blank': 创建一个空的仓库,这是最常见的选择。
- Create this repository from template: 可以从模板创建,例如包含
trunk,branches,tags目录结构,非常推荐。
- 点击 "OK"。
- 仓库创建成功后,您可以在左侧看到
MyProject,右键点击它,选择 "Properties" -> "Security",可以在这里配置不同用户或用户组对仓库的读写权限。
第三步:客户端连接
您可以使用任何 SVN 客户端(如 TortoiseSVN、IDEA/Eclipse 的插件)来连接这个服务器了。
-
获取仓库 URL:
- 在 VisualSVN Server Management Console 中,右键点击您的仓库(如
MyProject),选择 "Copy repository URL to clipboard"。 - URL 的格式通常是:
https://<你的电脑IP或主机名>:8443/svn/MyProject- 如果您在本机操作,
<你的电脑IP或主机名>可以是localhost。 - 如果在局域网内,请使用您电脑的 IP 地址,如
168.1.100。
- 如果您在本机操作,
- 在 VisualSVN Server Management Console 中,右键点击您的仓库(如
-
使用 TortoiseSVN 检出:
- 在您的电脑上创建一个空文件夹,
D:\SVN_Workspace。 - 在该文件夹空白处右键,选择 SVN Checkout...。
- 在 "URL of repository" 中粘贴刚才复制的 URL。
- 在 "Checkout directory" 中会自动填入当前路径。
- 点击 "OK"。
- 系统会弹出认证窗口,输入您在安装时创建的管理员用户名和密码。
- 成功后,您就可以开始进行版本控制操作了。
- 在您的电脑上创建一个空文件夹,
使用 svnserve (命令行方式)
这种方式不依赖 Apache,使用 Subversion 自带的 svnserve 进程,更轻量,配置也更灵活,但需要手动编辑配置文件。
第一步:安装 Subversion
-
下载软件:
- 访问 Apache 官方 Subversion 下载页面:https://subversion.apache.org/packages.html
- 下载 Windows 版本的二进制包,
VisualSVN Server也包含了它,或者单独下载CollabNet Subversion命令行包。
-
配置环境变量:
- 解压下载的压缩包到某个目录,
D:\svn。 - 将
D:\svn\bin目录添加到系统的 Path 环境变量中,这样就可以在命令行中直接使用svn和svnserve命令。
- 解压下载的压缩包到某个目录,
第二步:创建代码仓库
- 创建一个用于存放仓库的根目录,
D:\svn_repos。 - 打开命令提示符(CMD),执行以下命令来创建一个名为
MyProject的仓库:# -p 参数会自动创建 trunk, branches, tags 目录结构,推荐使用 svnadmin create D:\svn_repos\MyProject
第三步:配置 svnserve
-
进入您刚创建的仓库目录:
D:\svn_repos\MyProject。 -
您会发现有三个文件:
conf,db,hooks,我们只需要关注conf文件夹。 -
编辑
conf/svnserve.conf文件(建议用 Notepad++ 或 VS Code 等工具打开):[general] # 匿名用户访问权限设置为无 anon-access = none # 认证用户访问权限设置为读写 auth-access = write # 指定密码文件路径,相对于当前目录 password-db = passwd # 指定权限配置文件路径(可选) # authz-db = authz
-
编辑
conf/passwd文件,添加用户和密码:[users] # 格式:用户名 = 密码 admin = 123456 user1 = password1 user2 = password2
-
(可选)编辑
conf/authz文件,配置用户或用户组的访问权限:[groups] # 定义一个开发者组 developers = admin, user1 [/] # 根目录权限 * = r # 所有用户只读 [:/MyProject] # MyProject 仓库权限 @developers = rw # developers 组有读写权限 user2 = r # user2 只有读权限
第四步:启动 svnserve 服务器
-
以 管理员身份 打开一个新的命令提示符。
-
执行以下命令来启动
svnserve:# --service -d 参数表示以服务方式在后台运行 # -r 参数指定仓库的根目录,非常重要! svnserve --service -d -r D:\svn_repos
-r D:\svn_repos:这个参数告诉svnserve,所有客户端的请求都相对于这个根目录,客户端请求svn://localhost/MyProject,实际访问的就是D:\svn_repos\MyProject。
-
检查服务是否启动成功,可以打开任务管理器,在 "服务" 标签页下找到 "svnserve" 服务,状态应为 "正在运行"。
第五步:客户端连接
-
获取仓库 URL:
- URL 的格式是:
svn://<你的电脑IP或主机名>/MyProject - 如果在本机,
<你的电脑IP或主机名>可以是localhost。
- URL 的格式是:
-
使用 TortoiseSVN 检出:
- 操作与方案一类似,在
SVN Checkout中填入svn://localhost/MyProject。 - 在认证窗口中输入
passwd文件中设置的用户名和密码。
- 操作与方案一类似,在
总结与对比
| 特性 | VisualSVN Server (推荐) | svnserve |
|---|---|---|
| 易用性 | 极高,图形化界面,所有操作点点鼠标。 | 较低,需要手动编辑配置文件,使用命令行。 |
| 集成度 | 高度集成,包含 Apache 和 Web 界面。 | 轻量级,只包含 Subversion 核心功能。 |
| 访问协议 | https:// (加密,安全) |
svn:// (不加密,但可通过隧道加密) |
| 权限管理 | 通过 Windows 用户/组管理,集成 AD 域。 | 通过 svnserve.conf 和 authz 文件管理。 |
| 适用场景 | 小型团队、个人项目、需要快速搭建。 | 对系统资源要求低、需要精细权限控制、或已有特定环境的团队。 |
给新手的建议:直接使用 VisualSVN Server,它能让你在 15 分钟内成功搭建一个功能完善的 SVN 服务器,并且后续的维护管理也非常简单,当你对 SVN 有更深入的了解后,再考虑使用 svnserve 或其他更复杂的方案。
