凌峰创科服务平台

Windows下SVN服务器如何搭建?

使用 VisualSVN Server (图形化界面,最简单推荐)

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

Windows下SVN服务器如何搭建?-图1
(图片来源网络,侵删)

第一步:下载和安装

  1. 下载软件

  2. 运行安装程序

    • 管理员身份 运行下载的安装文件。
    • 在欢迎界面点击 "Next"。
  3. 接受许可协议

    勾选 "I accept the terms...",然后点击 "Next"。

    Windows下SVN服务器如何搭建?-图2
    (图片来源网络,侵删)
  4. 选择组件

    • VisualSVN Server: 这是核心服务器组件,必须安装。
    • VisualSVN Server Management Console: 这是一个管理控制台,强烈建议安装。
    • 保持默认选择,点击 "Next"。
  5. 选择安装路径

    • 默认路径是 C:\Program Files\VisualSVN Server,建议不要修改,除非您有特殊需求,点击 "Next"。
  6. 配置服务选项

    • Service: 选择 "As a service for all users (recommended)",这样 SVN 服务器会在 Windows 启动时自动运行。
    • Repository root path: 这是存放所有代码仓库的根目录,默认是 C:\Repositories,请确保这个路径所在的磁盘有足够的剩余空间。
    • Port: 默认是 8443,如果这个端口被占用,可以修改为其他未被占用的端口。
    • 点击 "Next"。
  7. 创建管理员账户

    • 这是设置第一个管理员账户的关键步骤。
    • Username: 输入管理员用户名,admin
    • Password: 输入一个强密码。
    • Confirm password: 再次输入密码。
    • Authentication: 选择 "Use same Windows account for authentication",这意味着这个账户将使用 Windows 的安全机制进行验证。
    • 点击 "Next"。
  8. 准备安装

    • 检查摘要信息,确认无误后点击 "Install"。
    • 安装过程会持续几分钟,请耐心等待。
  9. 完成安装

    • 安装成功后,会显示一个摘要页面,并有一个选项 "Run VisualSVN Server Management Console now"。
    • 勾选它,然后点击 "Finish",这会自动打开管理控制台。

第二步:创建代码仓库

  1. 打开 VisualSVN Server Management Console
  2. 在左侧的 "Repositories" 栏上右键点击,选择 "Create New Repository..."
  3. 输入仓库名称,MyProject
  4. 访问权限
    • Create this repository as 'Blank': 创建一个空的仓库,这是最常见的选择。
    • Create this repository from template: 可以从模板创建,例如包含 trunk, branches, tags 目录结构,非常推荐。
  5. 点击 "OK"。
  6. 仓库创建成功后,您可以在左侧看到 MyProject,右键点击它,选择 "Properties" -> "Security",可以在这里配置不同用户或用户组对仓库的读写权限。

第三步:客户端连接

您可以使用任何 SVN 客户端(如 TortoiseSVN、IDEA/Eclipse 的插件)来连接这个服务器了。

  1. 获取仓库 URL

    • 在 VisualSVN Server Management Console 中,右键点击您的仓库(如 MyProject),选择 "Copy repository URL to clipboard"
    • URL 的格式通常是:https://<你的电脑IP或主机名>:8443/svn/MyProject
      • 如果您在本机操作,<你的电脑IP或主机名> 可以是 localhost
      • 如果在局域网内,请使用您电脑的 IP 地址,如 168.1.100
  2. 使用 TortoiseSVN 检出

    • 在您的电脑上创建一个空文件夹,D:\SVN_Workspace
    • 在该文件夹空白处右键,选择 SVN Checkout...
    • 在 "URL of repository" 中粘贴刚才复制的 URL。
    • 在 "Checkout directory" 中会自动填入当前路径。
    • 点击 "OK"。
    • 系统会弹出认证窗口,输入您在安装时创建的管理员用户名和密码。
    • 成功后,您就可以开始进行版本控制操作了。

使用 svnserve (命令行方式)

这种方式不依赖 Apache,使用 Subversion 自带的 svnserve 进程,更轻量,配置也更灵活,但需要手动编辑配置文件。

第一步:安装 Subversion

  1. 下载软件

    • 访问 Apache 官方 Subversion 下载页面:https://subversion.apache.org/packages.html
    • 下载 Windows 版本的二进制包,VisualSVN Server 也包含了它,或者单独下载 CollabNet Subversion 命令行包。
  2. 配置环境变量

    • 解压下载的压缩包到某个目录,D:\svn
    • D:\svn\bin 目录添加到系统的 Path 环境变量中,这样就可以在命令行中直接使用 svnsvnserve 命令。

第二步:创建代码仓库

  1. 创建一个用于存放仓库的根目录,D:\svn_repos
  2. 打开命令提示符(CMD),执行以下命令来创建一个名为 MyProject 的仓库:
    # -p 参数会自动创建 trunk, branches, tags 目录结构,推荐使用
    svnadmin create D:\svn_repos\MyProject

第三步:配置 svnserve

  1. 进入您刚创建的仓库目录:D:\svn_repos\MyProject

  2. 您会发现有三个文件:conf, db, hooks,我们只需要关注 conf 文件夹。

  3. 编辑 conf/svnserve.conf 文件(建议用 Notepad++ 或 VS Code 等工具打开):

    [general]
    # 匿名用户访问权限设置为无
    anon-access = none
    # 认证用户访问权限设置为读写
    auth-access = write
    # 指定密码文件路径,相对于当前目录
    password-db = passwd
    # 指定权限配置文件路径(可选)
    # authz-db = authz
  4. 编辑 conf/passwd 文件,添加用户和密码:

    [users]
    # 格式:用户名 = 密码
    admin = 123456
    user1 = password1
    user2 = password2
  5. (可选)编辑 conf/authz 文件,配置用户或用户组的访问权限:

    [groups]
    # 定义一个开发者组
    developers = admin, user1
    [/]
    # 根目录权限
    * = r               # 所有用户只读
    [:/MyProject]
    # MyProject 仓库权限
    @developers = rw   # developers 组有读写权限
    user2 = r          # user2 只有读权限

第四步:启动 svnserve 服务器

  1. 管理员身份 打开一个新的命令提示符。

  2. 执行以下命令来启动 svnserve

    # --service -d 参数表示以服务方式在后台运行
    # -r 参数指定仓库的根目录,非常重要!
    svnserve --service -d -r D:\svn_repos
    • -r D:\svn_repos:这个参数告诉 svnserve,所有客户端的请求都相对于这个根目录,客户端请求 svn://localhost/MyProject,实际访问的就是 D:\svn_repos\MyProject
  3. 检查服务是否启动成功,可以打开任务管理器,在 "服务" 标签页下找到 "svnserve" 服务,状态应为 "正在运行"。

第五步:客户端连接

  1. 获取仓库 URL

    • URL 的格式是:svn://<你的电脑IP或主机名>/MyProject
    • 如果在本机,<你的电脑IP或主机名> 可以是 localhost
  2. 使用 TortoiseSVN 检出

    • 操作与方案一类似,在 SVN Checkout 中填入 svn://localhost/MyProject
    • 在认证窗口中输入 passwd 文件中设置的用户名和密码。

总结与对比

特性 VisualSVN Server (推荐) svnserve
易用性 极高,图形化界面,所有操作点点鼠标。 较低,需要手动编辑配置文件,使用命令行。
集成度 高度集成,包含 Apache 和 Web 界面。 轻量级,只包含 Subversion 核心功能。
访问协议 https:// (加密,安全) svn:// (不加密,但可通过隧道加密)
权限管理 通过 Windows 用户/组管理,集成 AD 域。 通过 svnserve.confauthz 文件管理。
适用场景 小型团队、个人项目、需要快速搭建。 对系统资源要求低、需要精细权限控制、或已有特定环境的团队。

给新手的建议直接使用 VisualSVN Server,它能让你在 15 分钟内成功搭建一个功能完善的 SVN 服务器,并且后续的维护管理也非常简单,当你对 SVN 有更深入的了解后,再考虑使用 svnserve 或其他更复杂的方案。

分享:
扫描分享到社交APP
上一篇
下一篇