11

我很想听听那些目前在 Windows 上运行 SVN 服务器的人的经验。

Jeff Atwood 有一篇关于如何将 SVN 设置为 Windows 服务的帖子。这是一个伟大的第一步,但它没有涉及其他主题,例如:

  • 什么用于基于 Web 的存储库浏览器?WebSVN 可以在 Windows 上运行,但它并不漂亮。
  • 如何管理 passwd 文件?
  • 是否可以在不运行 Apache 的情况下与 Active Directory 集成?
  • 备份存储库的策略。
  • 用于 Visual Studio 开发的有用的全局忽略模式(例如,此处此处此处的建议)。

大约一个月前,我们公司从 SourceGear Vault 切换到了 Subversion。我们已经掌握了基础知识,但很想发现人们在 MSFT 世界中运行 SVN 的提示和技巧。

4

12 回答 12

17

使用VisualSVN 服务器。它与 Windows 身份验证集成,并处理所有 apache 设置。它就像 SVN 在 Windows 上一样轻松。

于 2008-08-23T19:33:58.497 回答
2

VisualSVN 是要走的路。内置的 Active Directory 支持非常易于使用。

于 2008-08-23T19:37:40.670 回答
2

我发现 VisualSVN 比将 SVN 作为本机服务运行慢 50%。我一直以为

那是因为使用 Apache 通过 http:// 访问,这似乎必须更慢

而不是通过 svn:// 访问,这是本机 TCP/IP。

本实验

在过去的 30 分钟内,这是我所做的:

  • 在端口 8080 上安装 VisualSVN,与我现有的 SVN 安装并排
  • 将三个现有存储库导入 VisualSVN
  • 把其他人踢出服务器
  • 对完整的 svn 结帐进行并排比较

结果

Repo 1: 652 files, 273 directories, 60.1MB
  23 seconds for VisualSVN over http:// 
  16 seconds for SVN over svn://

Repo 2: 4623 files, 964 directories, 127.9MB
  2 minutes, 18 seconds for VisualSVN over http://
  1 minute, 30 seconds for SVN over svn://

这是在相同的硬件上,具有完全相同的存储库。我喜欢 VisualSVN 的简单程度,但 AD 集成和 GUI 不值得 50% 的性能损失。

其他人看到这种差异吗?只是遵循默认安装选项,我做错了吗?

于 2008-08-23T20:11:15.397 回答
1

我的博客http://tv.inner-rhythm.co.uk/上有一个相当深入的教程,介绍了如何使用我们在我的公司使用的 Apache 和 Trac 设置 SVN,这对我们有用。

于 2008-08-23T19:32:45.287 回答
1

我使用 VisualSVN 和 Tortoise 的组合。它不能与 Visual Studio 很好地集成,但您可以使用其他插件/应用程序。

于 2008-08-23T19:43:33.560 回答
1

Trac 无疑是我使用的最好的基于 Web 的项目管理软件,它与 subversion 集成,因此您可以查看每个版本的提交和差异的时间表,它允许票证和错误报告,并具有内置的 wiki。

http://trac.edgewall.org/wiki/TracOnWindows

对python有一点了解,很容易启动和运行(如果你在windows上,使用tracd服务器:http ://trac.edgewall.org/wiki/TracStandalone (这个链接会告诉你如何安装它) Windows 服务)。

于 2008-08-23T20:50:30.527 回答
1

我推荐TortoiseSVN。它将 SVN 功能添加到 Windows 资源管理器中。此外 TortoiseSVN 检查您使用的 IDE 是否支持 SVN。

于 2008-08-29T18:09:07.093 回答
1

Rich Strahl 刚刚发布了一篇关于为 Subversion 源代码控制运行 VisualSVN 服务器的博客文章。值得一读:

http://west-wind.com/weblog/posts/480534.aspx

于 2008-09-17T16:12:34.607 回答
1

为了备份,我编写了一个批处理文件和一个每周运行一次的 VBScript 作为计划任务的组合。它:

  • 递归地扫描文件系统上的特定文件夹以查找 SVN 存储库(我们有许多小型存储库,因为我们发现一个超级存储库很快变得难以维护,并且在与 TortoiseSVN 一起使用时速度非常慢);
  • 在找到的每个存储库上使用 svnadmin hotcopy 来创建备份;
  • 7将所有备份压缩到一个存档中;
  • 在 SAN 上安装共享并复制存档;
  • 删除所有临时文件;
  • 通过电子邮件发送“成功”通知。
于 2008-09-17T16:21:18.173 回答
1

VisualSVN 服务器 + Trac + TortoiseSVN + Ankhsvn。

完毕。光滑如丝。Visual SourceSafe 应该是什么。

于 2008-11-02T06:35:30.863 回答
0

我认为您看到了 svn 协议和将 svn 协议托管在另一个协议之间的区别。
与 svn 相比,使用 svn+ssh 时类似的性能下降。

易于设置,这对我的团队来说是一件轻而易举的事,我们只是把它扔到一个虚拟机上就跑了。

于 2008-08-26T03:34:43.113 回答
0

在apache下运行SVN真的没那么难。您可以使用mod_auth_sspi与活动目录集成。

于 2008-08-29T18:18:55.900 回答