在为我的版本控制需求选择了Apache Subversion (为我的主要 Subversion 客户端选择了AnkhSVN / TortoiseSVN )之后。现在我正在尝试选择 SVN 服务器来提供对 SVN 存储库的远程访问。我看过其中的几个:
我已将每个安装在 VM 中以试用它们,但还没有找到足以区分它们中的大多数以选择任何特定的。现在我有几件事需要决定。
- 协议
- 小贩
- SSL
1.我看过HTTP比SVN协议慢很多。虽然我的项目通常不会太大(实际上只有初始导入是耗时的部分),但我确实希望获得 SVN 的性能优势,并避免我的 HTTP 日志被 SVN 条目淹没(我有截至目前还无法分离成单独的 LOG 文件)。
不过,我确实喜欢使用 Apache 模块或 VisualSVN 提供的 Web 界面。我真的不需要将我的东西提供给其他人(甚至我自己远离我的系统),所以它并不重要,但它确实允许可扩展性。
2.选择协议后(假设我必须选择);我需要帮助决定使用哪个供应商。我最初使用的是 Tigris 发行版中的 Apache 模块。我已经删除了它(好吧,只是禁用了它),并且目前正在使用 VisualSVN(它是 HTTP,因此速度很慢)。我见过人们支持 Sharp 和 Silk,但它们似乎更小,独立发行版。
另一方面,Collabnet 似乎比我需要的更复杂。基本上,除非我能说服其中之一,否则我主要只是想在官方的 Tigris 和 VisualSVN 之间进行选择。
3. 我也尝试过使用 SSL,但没有取得多大成功(我买不起真正的 CA,所以我在 VisualSVN 中使用自签名证书)。我很乐意使用 SVN+SSH/HTTPS,但如果我在自己的系统上使用它,那就没有必要了,如果我在外部使用它,那么我的自签名证书将无济于事。
我想我什至可以使用本地存储库;我认为这将是最快的。但是,如果我扩展,我更喜欢更正式的解决方案。(我考虑过只使用 TortiseSVN 客户端在本地完成服务器的工作。)
所以总而言之,我需要一些关于使用哪个服务器(s?)的建议。如果我可以让 VisualSVN 提供一个供 Web 使用的 HTTP 接口,而且还可以在客户端使用的 SVN 协议上提供服务,最好在每个客户端上使用 SSL 选项,那就太好了。那可能吗?工作量会不会太大(我真的很想重新开始我的项目,而不是所有这些元工作)。
非常感谢。
编辑
我想我应该提供一些关于我的情况的信息来澄清事情。
- (目前)单系统,(旧版 P4,Windows,1GB SDRAM)
- (目前)单开发者(我)
- (目前)相对较小的项目(<2MB)
- 无数项目(>100 个单独的应用程序、游戏、库、网站等)
- 需要外部(特别是我自己的库以及第 3 方标头、Boost 等)
- ? 嗯,还有什么……</li>