【问题标题】:Source Control for a .Net guy.Net 人的源代码控制
【发布时间】:2012-08-23 23:20:11
【问题描述】:

VSS or SVN for a .Net Project?, 还有许多其他类似的问题。

对于 ASP.Net 开发人员来说有很多选择,有些完全是垃圾,有些功能丰富且价格昂贵。

我在进行个人开发时使用 Visual Source Safe 2005 有一段时间了,但仅限于我的个人项目。让我说,它有问题。

最糟糕的问题是它似乎无法处理 ASP.Net 网站。无论您如何设置,大多数内容都不会在编辑时签出,我通常必须获取最新信息并说“保留本地更改并签出”才能获得该功能。

无论如何,我想看看是否有人可以帮助我从这个怪物转移到更稳定的地方。 Team Foundation Server 显然是矫枉过正。 SourceVault 是可靠的,但有点贵。 SVN 是免费的,但大多数其他源代码控制提供商为您提供的所有插件都会让您付出“代价”。

我只是想知道每个人都在使用什么,以及他们是否可以提出更好的方法。

【问题讨论】:

    标签: .net asp.net version-control


    【解决方案1】:

    我最近使用三个免费工具将我的团队从 SourceSafe 转移到了 Subversion:

    1. VisualSVN Server - 适用于 Windows 的 Subversion 服务器包
    2. TortoiseSVN - 资源管理器外壳扩展
    3. AnkhSVN - Visual Studio 插件

    您还需要引用Subversion book

    这很容易设置并且取得了巨大的成功。 SourceSafe 是一场灾难——对我来说最后一根稻草是当我不得不合并一个特性分支并发现该功能实际上不存在任何可用的形式时。

    我更喜欢将 TortoiseSVN 用于复杂的操作,例如向 svn 添加解决方案、分支和合并。我使用 AnhkSVN 进行更新、提交和恢复。

    请注意,这些工具的最新版本目前是针对不同版本的 Subversion 构建的。 VisualSVN 和 AnkhSVN 是针对 1.5.5 构建的,但 TortoiseSVN 是针对 1.6 构建的。您可以获取以前版本的 TortoiseSVN 或使用 AnkhSVN 的每日版本。

    【讨论】:

    • 我发现 AnkhSVN 有点小故障。我更喜欢 VisualSVN。
    • 我想我们也会做出改变。 AnkhSVN 远远落后于 svn 版本。
    • @Jamie- 不知道 Tortoise 和 AnkhSVN 之间的不同目标版本。难怪我在使用 AnkhSVN 时总是出错。为我+1。我将使用 VisualSVN,因为我们有它的许可证。
    【解决方案2】:

    我建议仔细研究一下 SVN。大约 18 个月前,我们从 SourceSafe 迁移到 SVN,我再也不想回去了(我们主要做 ASP.NET 的东西)。

    特别是在团队中工作时,编辑-合并-提交模型比 SourceSafe 的锁定-编辑-解锁模型要容易得多。使用 subversion 处理分支也容易得多。

    关于插件,我可以说如下: 我主要使用 TortoiseSVN(免费),它很好地集成到 Windows 资源管理器中。我真的不会错过集成到 Visual Studio 中的插件。

    出于好奇,我安装了 AnkSVN(免费),它为您提供了一个集成解决方案(在 VS 中)。不得不说,效果很好,但大多数时候,我还是用 TortoiseSVN。

    【讨论】:

      【解决方案3】:

      您编写 .NET 人...如果您只是一个用户,SourceGear Vault 是免费的。之后,它运行大约 250 美元/用户并获得支持。不管怎样,我多年来一直在使用 Vault。简单,运行良好,来自 Source Safe,界面类似。

      www.sourcegear.com

      在家里,我使用免费的单用户版。在工作中,我们已经授权了大约 60 个用户。

      【讨论】:

        【解决方案4】:

        VisualSVN 很棒但不是免费的(尽管它的社区许可证允许在非域计算机上免费使用)。 AnkhSVN 是免费的。 Bazaar 还没有与 VS 进行太多集成,但它在命令行中非常棒。

        对于大型项目,如果您正在寻找集中式源代码控制系统,TFS 是一种方法。

        我个人建议切换到 Git。

        【讨论】:

        • 对于大型项目,TFS 相比 SVN 有哪些优势?
        • 好吧,如果您只考虑源代码控制,可能不会太多。但 TFS 为管理 Microsoft 平台中的软件项目提供了一个集成的解决方案。在我看来,TFS 提供的体验是无与伦比的。
        【解决方案5】:

        我将免费的 Visual SVN 服务器用于服务器端,并将 TortoiseSVN 客户端用于 Explorer 集成。

        我不关心 Visual Studio 集成,因为我也将 TVSN 用于非 VS 项目。我还使用 MSBuild 社区任务安装了用于自动构建的命令行 SVN 工具。

        我还设置了 TortoiseSVN 以在树中有任何未签入的内容时显示“已修改”图标,并且我忽略特定文件夹(例如 binobj)。我的结帐树与我的存储库布局相匹配。

        【讨论】:

        • 我最近在我的家用机器上添加了用于 VS 集成的 Visual SVN。
        【解决方案6】:

        如果您的工作如此不重要以至于您拒绝花钱,那为什么要这样做?咬紧牙关,花 50 美元购买VisualSVN

        【讨论】:

        • VisualSVN 现在提供免费的社区许可证。该许可证仅适用于非域计算机。
        【解决方案7】:

        我选择了 Team System,非常开心。是的,它里面的东西可能比我用过的要多,但我的想法是——我是想把时间花在配置和维护很多免费(或便宜)的软件上,并推出我自己的开发环境,还是把我的(公司的)资金用于我们的服务器人员可以为我维护的集成环境。我认为我的时间对于编写代码的组织来说更有价值,并且足以证明对 TFS 进行投资。

        相信我,我的经理完全同意我的看法,这对我来说并不算什么。由于服务器人员已经出于其他原因维护了 SharePoint 和 SQL Server,因此对他们来说并没有更多的努力——只是他们已经支持的数十台服务器中需要担心的另一台服务器。由于我们在 VM 上运行它,因此硬件成本可以忽略不计。

        如果我是为自己工作,显然,我的计算可能会有所不同。不过,我想说的是,您不仅需要考虑软件的费用,还需要考虑您愿意花在维护环境上的时间(和技能)。当您可以编写付费代码时,您需要考虑将开发环境的各个部分整合在一起并对其进行维护所带来的机会成本。

        【讨论】:

        • TFS 很棒。最大的问题是它该死的安装体验。 :)
        【解决方案8】:

        SourceGear Fortress(客户端和服务器)

        • 与 Visual Studio 完美集成
        • 扎实的应用
        • 内置问题跟踪系统

        【讨论】:

          【解决方案9】:

          Team Foundation Server 不一定是矫枉过正。如果您的团队有 5 名或更少的开发人员,并且您已经订阅了 MSDN,则可以免费使用工作组版。当团队变大时升级到完整版也不错。

          如果您不想使用,则不必使用所有项目管理功能。单独使用源代码控制很好,并且比 Visual Sourcesafe 有了很大的改进。

          不过,我会将默认的比较和合并工具替换为 Compare It! 之类的工具。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2012-07-25
            • 1970-01-01
            • 2011-04-02
            • 2010-09-11
            • 1970-01-01
            • 2011-06-19
            • 2020-10-20
            相关资源
            最近更新 更多