它应该在开发服务器还是Subversion服务器上?
我认为这可以扩展到任何客户端 - 服务器版本控制系统。
答案 0 :(得分:21)
物理存储库应位于可获得定期备份的稳定系统上。
通常,开发服务器不符合此描述...将apache服务器放在开发服务器上并在稳定的备份文件服务器上远程托管文件是可以接受的(尽管有很多如果您无法获得额外的服务器资源,则使用此方法存在缺陷。如果你有一个积极的备份系统来保护你的代码,那么在dev服务器上托管它可能没问题......
请记住,开发服务器很容易发生配置更改,被吹走,或以其他方式破坏,这可能会在关键时刻取消您的回购。
答案 1 :(得分:2)
我喜欢把它放在自己的服务器上,只是因为在我看来它是组织中最重要的服务器之一,并将它保存在自己的服务器上,这有助于管理员进行备份和其他维护活动。而且因为服务器非常重要,所以你不希望其他开发人员以任何可能意外损害它的方式对其进行攻击。
此外,如果你有一堆开发人员和一个活跃的持续集成服务器运行,你实际上可能会对cpu产生很大影响,而你要做的最后一件事就是阻碍你提交代码更改< / p>
答案 2 :(得分:2)
除了其他人提到的关于开发服务器被定期删除的内容之外,还有一个性能论点。如果有人在开发服务器上进行某些开发或测试,您不希望这会降低SVN服务器的速度以进行检出或同步。此外,如果您决定在同一服务器上运行持续集成之类的操作,则不希望所有单元测试都陷入该服务器上的常规开发/测试操作。
答案 3 :(得分:1)
我将自己保留在开发服务器上,该服务器还运行Trac,Apache托管项目JavaDocs的自动更新副本以及CI构建平台。一个项目必须具有相当大的比例才能要求专用的Subversion服务器。
但是,请记住,将Subversion存储库备份到另一个位置的另一台计算机上非常重要 - 您的存储库是最有价值的资产!
答案 4 :(得分:1)
根据定义,开发盒将被破坏并坍塌。它来自领土!
您真的希望这会发生在源代码存储库中吗?...
答案 5 :(得分:1)
在我的公司,我们把它放在一台提供冗余存储的专用机器上。我想在我们的文化中,我们高度重视源和创建源代码所需的时间和精力。我们从未使用任何可能变得笨拙或擦干净的测试机器,因为配置变得无法管理。
woops。我们还将缺陷跟踪保留在同一个盒子上,但出于同样的原因。
答案 6 :(得分:1)
我们为我们的存储库使用干净的空白石板。具体来说,我们使用Slicehost作为主存储库。
我们从256MB切片开始,稍后升级到512MB。 Slicehost很棒,因为你知道你有一个完全干净的服务器,并且可以自己构建你需要的东西。
Slicehosts' articles是一流的。
我们的repo服务器如下所示:
就是这样。没有多少开销。
编辑:不要试图在这里出售Slicehost,所以如果那不是犹太人,请告诉我!
再次编辑:James对于在第三方服务器上托管专有代码提出了一个很好的观点。在选择主持人做这样的事情时,一定要特别小心。不幸的是,许多公司根本没有资源来构建和管理内部服务器,这是我们在为代码选择主机之前发现的。
答案 7 :(得分:-1)
最好将存储库保存在稳定的服务器上,以便在需要时可靠地进行备份。