当前位置:  开发笔记 > 编程语言 > 正文

替代VSS的单人秀(军队的一个?)

如何解决《替代VSS的单人秀(军队的一个?)》经验,为你挑选了7个好方法。

我已经为同一个雇主编程了10多年,我们曾经使用的源代码控制只有VSS.(对不起 - 这就是他们开始时所拥有的).我们中只有少数人; 现在两个,我们通常独自工作,所以VSS对我们有效.所以,我有两个问题:1)我们应该切换到其他东西,比如subversion,git,TFS等究竟是什么,为什么(请)?2)我是否超越了所有的希望并注定永远的诅咒,因为VSS腐蚀了我(正如杰夫所说)?

哇 - 感谢所有伟大的回应!

听起来我应该澄清一些事情.我们是一家MS商店(Gold parntner),我们主要做VB,ASP.NET,SQL Server,sharepoint和Biztalk工作.我有CS学位,所以我在DEC unix和Slackware Linux上完成了x86汇编C,C++的"时间不在乎"......

我对VSS的关注是,现在我正在更多地工作VPN和VSS的性能sux而且我担心我们的10+ y/o版本5 VSS数据库将被解雇......有LAN服务是本来应该加快速度,但我从未使用它,我不确定它有助于腐败 - 有没有人使用过VSS局域网服务?(VSS 2005新增功能)



1> Ben Collins..:

如果我是你,我可能会选择Subversion.在这一点上我是Git的狂热分子,但是Subversion肯定有一些优势:

简单

丰富的可互操作工具

积极和支持的社区

手提

有很好的Windows shell集成

与视觉工作室整合(我认为 - 但肯定是通过第三方)

Git有许多其他优点,但上面提到的是人们在询问上述一般问题时所关心的问题.

编辑:我现在工作的公司是使用免费的VisualSVN服务器.它使得在Windows服务器上设置Subversion存储库变得简单,在客户端上我们使用TortoiseSVN(用于shell集成)和AnkhSVN用于Visual Studio支持.它非常好,即使是VSS用户也应该相当容易.

后期编辑:所以....近八年后,我绝不会出于任何原因向任何人推荐Subversion.我真的不放弃信仰,本身,因为我认为我的建议当时有效.然而,在2016年,Subversion几乎没有保留过Git的优势.Git的工具优于(并且更加多样化)它曾经是什么,特别是GitHub和其他优秀的Git托管服务提供商(BitBucket,Beanstalk,Visual Studio Online,就在我的脑海中).Visual Studio现在已经开箱即用了Git支持,实际上非常不错.甚至还有PowerShell模块可以为控制台的居民提供更原生的Windows体验.Git比Subversion更容易设置和使用,并且不需要服务器组件.Git已经变得像任何单一工具一样无处不在,你真的只会欺骗自己不使用它(除非你真的想要使用不是Git的东西).唐"


几年后,我回到这个答案,并畏缩了一下.SVN简直太糟糕了.*可怕*.上面的答案仍然是真实有效的,但我认为我实际上向任何人推荐SVN都对我自己失去了一点尊重.
我同意.Subversion是要走的路.
@CodingBarfield:在软件项目的生命周期中,你将在服务器某处设置SVN 1次,并为'd'开发人员设置'd'次,然后很少再次设置.我们需要在每个'd'天进行分支.您需要每天/每天合并'd'次.因此,当使用SVN时,您将设置Θ(1)次,但您将分支σ('d'/'D')次并合并约σ('D'*'d')次(即使您从未科).您认为哪些优化更重要?SVN(以及几乎所有集中式系统)都很难合并.

2> Shawn Miller..:

看起来SubVersion就是胜利者.我帮自己一个忙,并使用VisualSVN Server.它是免费的,可以为您节省大量的安装麻烦.



3> lomaxx..:

如果你习惯了VSS的工作方式,请查看(没有双关语)Sourcegear的保险库.这是远离VSS的一种很好的方式,因为它集成了IDE集成并支持签出/签入,但是当你准备好并感到舒服时,你也可以转到SVN中的编辑更新提交样式.

它对于单个开发人员是免费的,在IIS上运行并且构建在.net上,因此它应该是一个相当熟悉的堆栈供您切换.


我多么厌恶金库.虽然我没有在单个开发人员场景中使用它,但我已经看到它在团队环境中一遍又一遍地搞砸了.我们用Subversion取而代之.我们整个开发部门对这个开关感到非常高兴.

4> 17 of 26..:

无论你做什么,都不要为了改变而改变.

如果它对你起作用并且你没有遇到问题,我认为没有任何理由可以改变.


未来出现问题的可能性不大是一个很好的理由吗?我似乎记得VSS有令人讨厌的数据库损坏问题.将其完整的源代码放在一个不稳定的系统中似乎有点冒险,即使它没有表现出不稳定性......

5> Mark..:

对于它的价值,Perforce是一个潜在的选择,如果你真的坚持1或2个用户.目前的perforce docs表示,您有2个用户和5个客户,而无需开始购买许可证.

您可能有理由根据您的工作流程切换到perforce,如果您需要按照perforce的方式进行分支.对于这里提到的其他产品并不过分熟悉,我无法告诉你perforce在功能部门中如何比较分支等等.

它速度很快,而且对于我们来说非常坚固(300多名开发人员拥有10年以上的代码库).我们存储了几个T信息并且响应非常快.对于少量用户,我怀疑假设您的服务器具有良好的硬件,您将遇到许多性能问题.

之前使用过VSS,我相信你可以从更好的SCM系统中获得很多好处,无论你是否有腐败,都应该考虑转换.单独分支对您来说可能是值得的.真正的客户端/服务器模型,更好的接口(编程和命令行)是一些其他的东西,可以真正帮助改善您的工作流程,并在一定程度上提高生产力.

总之,我对Perforce的看法是:

它快速而且非常可靠

大量的跨平台客户端工具(windows,unix,mac等)

它可供2位用户和5位客户免费使用

集成到开发人员工作室(和其他工具)

有一个强大的分支系统(可能或可能不适合你).

有几个可编写脚本的接口(python,perl,ruby,C++)

肯定是YMMV - 我只提供这种替代方案,可能值得研究.



6> Dave Webb..:

我最近开始使用Mercurial进行一些工作.它是一个像Git这样的分布式系统,但似乎更容易使用,而且在Windows上支持得更好,后者对我来说至关重要.

通过分布式源代码控制,每个用户都拥有存储库的完整本地副本.如果你是唯一一个从事项目工作的人,就像你经常说的那样,这可以简化很多事情,因为你只需创建自己的存储库并在本地完成所有提交等.如果您想稍后引入其他开发人员,您可以将存储库的全部内容(当前版本和所有历史记录)推送到另一个系统,可以是共享服务器,也可以是另一个用户的工作站.

如果您只使用本地存储库,请记住您还需要一个备份解决方案,因为共享服务器上没有所有代码的副本.

我认为Mercurial比Subversion还有很多其他的优势,但它确实有一个很大的缺点,已经被提到作为Subversion的一个加分点:有很多第三方工具和Subversion的集成.由于Mercurial几乎没有出现过,因此选择要少得多.在Windows上,您似乎必须使用命令行(我的选择)或TortoiseHg Windows资源管理器集成.



7> Ant..:

VSS太可怕了.我可能正在引导Spolsky(不确定他是否说过这个),但使用VSS实际上比根本不使用源代码控制更糟糕.尽管它的名字,它不安全的.它在不提供安全的情况下创造了安全的幻觉.

如果没有VSS,您可能会定期备份代码.有了VSS,你会想,"嗯,它已经处于源代码控制之下.为什么还要备份呢?" 很棒,直到它破坏了整个代码库,你就会失去一切.(顺便说一下,这件事发生在我工作过的公司.)

尽快摆脱VSS并切换到真正的源代码控制解决方案.

推荐阅读
放ch养奶牛
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有