本文介绍了.Net 项目的 VSS 或 SVN?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在工作中,一位主管让我研究将我项目的当前源代码管理服务器 (Visual Source Safe) 更改为 SVN 有什么好处.

At work, one of the head managers asked me to research on what could be the benefits of changing the current source control server (Visual Source Safe) of my project to SVN.

我真的没有什么反对SVN的,其实我有点挖,但是以我的拙见,改用SVN不会给项目带来任何显着的好处,而且会迫使我们使用一些第三方工具从 Visual Studio 管理源代码管理(我们主要使用 Microsoft 工具进行开发).

I really don't have anything against SVN, actually I kind of dig it, but in my humble opinion, change to SVN will not bring any significant benefits to the project, and will force us to use some third-party tools to manage the source control from the Visual Studio (we develop using mostly Microsoft tools only).

因此,作为我研究的第一步,我问您:从 VSS 切换到 SVN 有什么好处?

So, as a first step in my research, I ask you: what could be the benefits of switching from VSS to SVN?

推荐答案

SVN 比 VSS 更受欢迎,并且有很多优点.VSS 陈旧过时.

SVN is more popular than VSS and has lot's of advantages. VSS is old and outdated.

现在许多开发人员正在从 VSS 转向 SVN.如果你在谷歌搜索SVN"和VSS",它会显示很多与VSS 到 SVN 迁移.

Many developers nowdays are moving from VSS to SVN. If you will search for "SVN" and "VSS" in Google, it will show you lots of articles related to VSS to SVN migration.

  • VSS 的锁定-修改-解锁模型使快速更改文件的协作成为一个主要问题.加上需要管理员解锁某人在休假期间签出的文件的开销.
  • 使用 VSS,这不是您是否会丢失数据的问题,而是 WHEN.你的源代码库应该是一块石头——如果开发人员的工作站崩溃,你应该只丢失 HIS 更改.您不应该丢失存储库中的随机文件和数据
  • MS 已超过 6 年没有维护 VSS.你还能得到它的支持吗?
  • 根据您的备份工具,如果只有一个人登录到服务器,您可能无法获得 VSS 存储库的完整备份(这意味着他们将开发工具保持打开状态,或让 VSS 客户端保持运行状态).
  • VSS 要求所有用户在文件系统级别(NTFS 权限)几乎完全控制构成存储库的文件.
  • 没有适用于 VSS 的良好、可用且易于使用的已发布 API,而且大多数 3rd 方工具都很薄弱.
  • 合并在 VSS 中很糟糕.
  • VSS:如果您的开发人员分布在多个时区,如果他们以错误的顺序签入过于靠近,那么他们签入的行为本身就会损坏数据库.

现在,这并不是说 Subversion 是完美无缺的——肯定有它可以做得更好的事情,也有它根本没有做的事情.但是所有使用过 VSS 和 SVN 的人很可能永远不会回到 VSS.

Now, this isn't to say that Subversion is faultless - there are certainly things it could do better, and things it doesn't do at all. But all the people who worked with VSS and SVN most likely will never come back to VSS.

如果你会选择SVN.以下是您可能需要的工具列表:

If you will choose SVN. Here is a list of tools you may need:

  • AnkhSVN 是 Visual Studio 的 Subversion SourceControl 提供程序.莉>
  • RapidSVN 是一个跨平台的 Subversion 客户端.
  • TortoiseSVN 是一款适用于 Microsoft Windows 的易于使用的 SCM/源代码控制软件,也许最好的独立 Subversion 客户端.
  • VisualSVN 是一个 Visual Studio 插件,它集成了 Subversion 和TortoiseSVN 与 Visual Studio 无缝对接.
  • VisualSVN Server 是一个包含您需要安装的一切的包在 Windows 平台上为您的团队配置和管理 Subversion 服务器.它包括 Subversion、Apache 和一个管理控制台.

这是一本关于这个主题的好书:版本控制颠覆 C Pilato

Here is a great book on this subject: Version Control with Subversion by C Pilato

使用 Subversion 进行版本控制 http://ecx.images-amazon.com/images/I/51iwjNGkQdL._BO2,204,203,200_PIsitb-sticker-arrow-click,TopRight,35,-76_AA240_SH20_OU01_.jpg

VSS 和 SVN 的另一个很好的替代方案是 SourceGear Fortress,除了源代码之外,它还有问题跟踪系统控制 - 合而为一.或者 SourceGear Vault - 仅限源代码管理.还有 SourceAnyWhere 解决方案.如果您需要 Microsoft 解决方案,请使用 TFS 而不是 VSS.

Another good alternative to VSS and SVN is SourceGear Fortress which has Issue Tracking system in addition to source control - all in one. Or SourceGear Vault - source control only. Also there is SourceAnyWhere solution. If you need Microsoft solution than go with TFS instead of VSS.

这篇关于.Net 项目的 VSS 或 SVN?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-04 17:52