12

我目前正在为一个由 10 名开发人员组成的团队研究新的源代码控制选项。我们在 Visual Studio 2008 中进行 .net 开发。我们目前使用 VSS 进行源代码控制。

我们正在寻找一个集中的源代码控制解决方案(非分布式),带有一个不错的 Visual Studio 插件。我的经理推荐了 Plastic SCM,而我一直都听说过关于 Subversion 的好消息。我正在尝试决定我们是否应该采用 Subversion 或 Plastic SCM。

关于塑料单片机的信息不多(除了他们写的),我想知道这是否是一个好的解决方案。它们听起来好像分支要简单得多。

另一方面,Subversion 有一个强大、成熟的社区,并且已经过彻底的现场测试。

这些工具的优缺点是什么?

还有其他工具可以推荐吗?

谢谢

4

8 回答 8

16

我想为每个仍然做出选择的人添加这个答案。

我正在使用 VS2008 在 C# 中进行开发。我在一个由两个开发人员组成的团队中工作。我们曾经没有源代码控制(恐怖),然后我们使用 Subversion(okish),然后我们切换到 Plastic SCM(好)。

我的比较矩阵:(
请注意我的 Windows 用户观点,YMMV)

专业塑料:

  • Windows 应用程序——漂亮而直观的用户界面
  • 很好的学习视频(你可以在大约两个小时的时间内学习所有你需要的东西)
  • 标准任务都很容易完成:切换到另一个分支、获取某个文件的旧版本、差异、合并。

反塑料:

  • 花钱(开源免费;编辑(2/2011): 曾经有免费的商业 2 用户许可证有一个免费的 15 用户商业许可证。不过,您需要每年更新它。)
  • 没有真正的服务器/管理程序:我不知道数据存储在磁盘上的确切位置;这一切都对我隐藏了。现在,如何备份我的存储库?我知道的唯一“解决方案”是使用客户端的复制功能并将存储库复制到您的本地主机服务器。(我还没有这样做。)[编辑:查看评论以获得真正的解决方案。]

专业颠覆:

  • 自由
  • 开源
  • 庞大的用户群

反颠覆:

  • Subversion 不能真正处理文件重命名。您可以解决,但它(还)不是本机功能。
  • 移动目录之类的事情可能会损坏您的工作副本。
  • Tortoise SVN 只是命令行 svn.exe 的外观。对于许多操作,您仍然需要了解命令行命令及其开关。
  • Tortoise SVN 严重减慢了我的 Windows 资源管理器右键单击速度。
  • 当存在冲突时,合并需要更多时间。您获得同一个文件的多个副本,然后您必须删除所有不需要的版本(为此保留 Visual Studio),或者您将冲突指示符放入您的代码中,这会使您的代码无法编译,直到您将它们全部删除. 另一方面,在 Plastic SCM 中,合并操作会打开一个类似于 WinMerge 的窗口,您只需单击需要解决冲突的代码块即可。

希望有帮助。如果您需要任何其他具体信息,请告诉我。

菲利克斯

于 2010-03-27T00:25:09.200 回答
4

使用 VisualSVNServer 是在 Windows 环境中启动和运行 Subversion 的一种简单方法,他们有一个工具可以提供 Visual Studio 集成,价格约为 50 美元/开发。当我在一家公司工作时,我正处于转型期,决定是在 SVN 和 Perforce 之间做出的。我们最终选择了 SVN,因为我能够轻松获得、使用、测试和使用它。我们可以获得 Perforce 的 WebEx 演示文稿,但如果不购买他们的书就很难学习。我还认为它是开发人员了解的更好工具,因为有很多开源项目都在上面,而且它是一种更易于转移的技能。如果您要转到另一个职位,则不太可能使用塑料单片机。

于 2009-06-19T19:50:37.083 回答
3

看看这里的表现。它将两个系统在非常重的负载下(1、10、20、50,最后是 100 台并发机器与单个服务器进行比较,这肯定比 100 多个真实用户)。

于 2010-07-23T23:44:21.987 回答
2

我提前为我的建议找借口,但是您可以集中使用分布式版本控制系统。这只是开发团队内部的政治问题。

例如,Mercurial 允许通过 TortoiseHG 非常轻松地通过 Web 服务进行拉取和推送。

或者,也许您可​​以尝试使用混合解决方案、集中式(颠覆)服务器以及为每个使用 git 的开发人员提供本地分支,我不得不说,这非常容易。

对于 Subversion <-> VStudio,我使用过 Ankh,我发现它非常易于使用。对于 Git <-> VStudio,我使用了 GitExtensions,但集成不如 Tortoise Shell 扩展或 Ankh 那样好,但您可以自己尝试。

于 2009-06-19T19:34:34.010 回答
2

我以前没有使用过 Plastic SCM,但 Subversion 过去对我来说效果很好。如果您不受 SVN 等免费解决方案的约束,您可以考虑使用 Team Foundation Server。除了版本控制之外,TFS 还提供了其他不错的功能,例如工作项跟踪、集成报告……您可以想象,Visual Studio 集成非常棒:)

于 2009-06-19T19:36:36.457 回答
0

我使用了 GIT、SVN 和 Plastic(SCM 4 之前的版本),然后是 SVN,现在又回到了 Plastic SCM 4。Plastic 不仅比我使用的其他工具更快地签入/签出/更新等,而且它有一个漂亮的用户界面以及直观的(对我而言)导航和功能。当我更改分支等时,我总是遇到 SVN 损坏的工作副本等。Plastic 对我有用。

于 2012-03-16T19:50:48.350 回答
-1

VSS 的另一个替代方案是SourceGear Vault('vss done right')。最大的优点是它可以工作(与 VSS 不同)。

PlasticSCM 似乎是一种分布式解决方案,而 svn(以及 VSS、TFS、...)是集中式的。如果你想要商业分布式解决方案的替代品,你可能想看看gitmercurialbazaar

于 2009-07-23T09:07:39.700 回答
-1

我使用 SVN 的时间最长。我已经习惯了。无论是在办公室还是在我家里的个人网络上。它工作得很好而且很容易。

我最近开始了一份新工作,在这个办公室里我们使用塑料。这是我第一次接触这个产品。我对 Plastic 感到非常震惊,以至于在我自己的服务器上,我放弃了 SVN 并转移到了 Plastic。就是这么好。我不会轻易被说服回到 SVN。塑料是完美的。最多 15 位开发人员可免费使用。它可以与 SQL 服务器集成,因此您可以始终准确地知道您的存储库在哪里。它可以连接以使用 AD 身份验证。我最喜欢 Plastic 的是它的 Branch explorer。它有一个 GUI,可以显示当前项目的所有分支。在此分支资源管理器中,您可以从主分支创建子分支或将子分支合并回主分支。这是经过深思熟虑的。

塑料恕我直言,梦想成真。巴勃罗知道他的东西!

于 2014-05-31T11:41:02.843 回答