单独开发人员的无服务器Subversion的优点/缺点

时间:2009-12-07 05:55:44

标签: svn version-control tortoisesvn

TortoiseSVN对此有好处吗?

如何才能使最佳做法正常工作?

使用这种方式特别关注棘手问题吗?

5 个答案:

答案 0 :(得分:7)

对于单个开发者来说没问题 但我严格禁止与多个开发人员一起使用它。

SVN书中说:

  

不要被简单的想法所诱惑   让所有用户访问   存储库直接通过file:// URL。   即使存储库很容易   通过网络向所有人提供   分享,这是一个坏主意。它删除   任何层之间的保护   用户和存储库:用户可以   意外(或故意)   它破坏了存储库数据库   变得很难拿到存储库   离线检查或升级,以及   它可能导致一团糟   文件权限问题(参见   部分称为“支持多个   存储库访问方法“。)请注意   这也是我们的原因之一   警告不要访问存储库   通过svn + ssh://来自安全的URL   从立场来看,它实际上是一样的   作为通过file://访问的本地用户,   并且可能带来所有相同的问题   如果管理员不小心。

(来自:http://svnbook.red-bean.com/en/1.4/svn.serverconfig.choosing.html

安装svnserve并不复杂,在配置中花一两个小时真的值得。

答案 1 :(得分:4)

显而易见的缺点:即使您使用的是RAID,因此磁盘上也存在冗余,如果您的计算机丢失或被盗,您就会受到冲击。如果您在某个服务器上托管了源,那么如果 服务器您的客户端计算机被盗,那么您将拥有另一个副本。 (不可否认,如果服务器被盗,你将失去历史和分支,但它总比没有好。)

答案 2 :(得分:0)

我这样做。我使用名为SVN的共享文件夹。在这个文件夹里面是我的各个项目的subversion存储库。

没有任何问题。我现在将其托管在RAID 5阵列上以实现冗余。

我应该指出,这已经做了3年多了。

在过去的两年里,我也在公司环境中进行了设置,其中存储库已经有超过200个签名并且大小超过200Mb。

答案 3 :(得分:0)

我曾经运行一个Linux机器只是为了托管SVN服务器(我在Windows上几乎完成了所有的开发),但我厌倦了它在桌面下嚎叫,转而使用Windows上托管的单用户SVN。我没有遇到任何问题(触摸木头),但我确实经常备份我所有的SVN存储库,所以最多我可能会失去一天的工作。无需复杂的备份程序,只需自己购买一些USB闪存,只需将SVN存档目录复制到它们即可。

答案 4 :(得分:-2)

我的建议是你必须非常小心权限。我在单独开发人员配置中发现了一些偶然的麻烦,所以如果某些行为奇怪地检查权限并首先锁定存储库的状态。如果您喜欢我多个不相关的项目,我所做的就是为每个项目创建一个目录,在这个目录中我放了​​两个子目录:SVN,其中包含项目的repo,以及“checkout”,其中包含实际的结帐。我使用这种方法是因为我有自动备份我的主目录,因此我可以备份项目及其存储库。或者,您可以将repo放在其他位置(必须保留备份)。