【问题标题】:Source Control with Visual Studio: switch from VisualSVN to Ankh?使用 Visual Studio 进行源代码控制:从 VisualSVN 切换到 Ankh?
【发布时间】:2010-09-21 22:48:14
【问题描述】:

我正在为我和一小群开发人员评估 VisualSVN。我在服务器(VisualSVN 服务器)上设置它没有问题,并安装了 TortoiseSVN 和 VisualSVN,以便将它集成到 Visual Studio 2008 中。到目前为止,它运行良好,我们将它用于开发我们的主要应用程序。

我也听说过 AnkhSVN 新版本的好消息,它是开源和免费的。由于我们刚开始使用 Subversion,我想现在就做出正确的决定。

是否可以轻松地从 VisualSVN 切换到 AnkhSVN?我可以保留 VisualSVN 服务器安装还是必须切换它?如果我开始使用 AnkhSVN,TortoiseSVN 会过时吗?而且,当前版本在 Visual Studio 2008 中是否可靠?

要明确一点:这与每位开发人员 50 美元无关。这是关于为未来做出正确的决定。你有什么推荐的?

非常感谢!

【问题讨论】:

    标签: visual-studio version-control migration visualsvn ankhsvn


    【解决方案1】:

    我们正是这样做的:从 VisualSVN 切换到 AnkhSVN。此举完全没有任何麻烦。这些插件不存储具体信息,.svn(或_svn)隐藏文件夹兼容任何svn客户端。

    Ankh 插件的 1.x 系列非常糟糕:很多崩溃和烦恼(例如,移动或重命名未提交的文件非常困难)。 2.x系列修正了大部分问题,虽然还没有达到VisualSVN的水平,但我发现它非常适合我们使用(而且非常免费)。

    关于迁移本身,再简单不过了:我们只是卸载了 VisualSVN,然后安装了 Ankh。只要您的目录受源代码控制,它就可以工作。

    唯一的共同点是你仍然需要 TortoiseSVN 来做很多事情,无论是高级任务,还是更基本的任务:创建工作目录和在资源管理器中结帐比使用 Visual Studio 简单得多。

    【讨论】:

      【解决方案2】:

      我认为,对于更高级的功能,您仍然需要 TortoiseSVN(如导出、重定位、整个目录操作、锁定等)。 AnkhSVN v2 非常好。我使用这两种方法都没有太多麻烦。

      至于设置远程存储库(我不知道 VisualSVN,所以我假设我们正在谈论存储库服务器),您需要直接从 Subversion 包中使用 svnserve。您可以将其设置为Windows service

      【讨论】:

      • 我也使用这个设置。 VisualSVN 服务器和 AnkhSVN 客户端。而且效果很好。对于某些事情,我仍然会挖掘 TortoiseSVN。但大多数 AnkhSVN 在 VS 中完美地完成了这项工作
      • 让我把这理解为菜鸟:本地存储库是否/必须/可以仍然在 TortoiseSVN 的控制之下?还是移动该目录并重新开始更好?
      • AnkhSVN 和 TortoiseSVN 使用所有 SVN 使用的相同文件夹结构。有隐藏的 .svn 文件夹可以跟踪 repo。因此,您可以在两个客户端上处理存储库,产生相同的结果。
      • 我实际上只使用 AnkHSVN,但我需要一些 Ankh 不能做的事情 我只需打开资源管理器,用 Tortoise 做我的事情,然后立即用 Ankh 返回 VS,没有重新启动什么.. Ankh 本身在内部使用 SharpSVN 引擎。 sharpsvn.open.collab.net
      【解决方案3】:

      AnkhSVN 可与任何 Subversion 服务器配合使用,VisualSVN 服务器是最容易为 Windows 配置的服务器之一。

      如果您需要在 VisualSVN 和 AnkhSVN 之间共享项目和解决方案,您应该确保您没有将您的项目连接到 AnkhSVN scc 提供程序,否则 VisualSVN 用户会看到警告。 (您可以连接解决方​​案文件而不会看到 SCC 警告)。

      您可以将 AnkhSVN 与任何其他 Subversion 客户端一起使用,但我们将 AnkhSVN 2.0 设计为不需要另一个客户端来进行正常操作。在其他 subversion 客户端旁边使用 AnkhSVN 可能会遇到的唯一问题是 AnkhSVN 2.0 仅在真正需要时(在提交之前)将文件添加到 subversion,以提高性能并允许对文件进行大小写重命名。

      【讨论】:

        【解决方案4】:

        Ankh 应该适用于任何 Subversion 服务器,因此它也应该适用于 VisualSVN。 见这里:http://www.visualsvn.com/server/ 它说服务器与所有客户端兼容。 :-)

        【讨论】:

        • 我在我的邮件存档中没有看到任何来自您的错误报告。能否请您在 ankhsvn 用户列表上报告您的 2.0 错误,以便我们对其进行处理? (用户@ankhsvn.open.collab.net)。谢谢。
        • 嗯。这是一条旧评论。我在使用旧版本的 Ankh 时遇到了麻烦。最近我又试了一次,现在效果很好! :-)
        【解决方案5】:

        我正在使用 VisualSVN 和 Ankh,没有任何问题 - Ankh 适用于任何 Subversion 服务器。我发现 VisualSVN 和“原始”Subversion 包之间的唯一区别是 VisualSVN 使用 http/https 而不是 svn: 协议。

        【讨论】:

          【解决方案6】:

          我认为这包含相关信息:AnkhSVN versus VisualSVN

          【讨论】:

            【解决方案7】:

            说我疯了,但这个解决方案对我来说似乎很干净:http://blog.programmerslog.com/?p=4

            Garry Bodsworth 提出了使用 TortoiseSVN 的 Visual Studio 设置。基本上,无需手动添加外部工具自定义,导入这些设置即可为您完成所有工作:Subversion 工具栏、Subversion 菜单和上下文菜单命令。

            我认为这将是一个比安装 AnkhSVN 或 VisualSVN 更简单的解决方案。

            【讨论】:

              【解决方案8】:

              我对 Ankh 的体验很糟糕(运行时崩溃太多),但这是针对旧版本的 Ankh,他们可能已经缓解了这些问题。话虽如此,首先坚持 a) 有效的方法,然后 b) 你能负担得起的方法。

              【讨论】:

              • AnkhSVN 2.0 是自 1.X 系列以来的近乎重写。它的集成与以前完全不同。
              【解决方案9】:

              老实说,我不太喜欢 Visual Studio 的任何 SVN 附加组件。我最终只是自定义了我自己的一组宏来做我需要做的任何事情,并添加菜单项和自定义上下文菜单,用于提交、更新、显示日志等。我使用 Tortoise 并与命令行工具集成。这很容易做到,包括与 TortoiseProc.exe 的命令行调用集成。但是,我确信与 svn.exe 或其他基于命令行的 svn 客户端集成同样容易。另外,您还可以通过它设置您的思考和工作方式,而不是打包的东西。我将继续使用自定义宏,直到找到更好的颠覆集成工具。

              【讨论】:

              • 我知道现在问有点晚了,但您介意分享您实现的那些宏和自定义吗?
              猜你喜欢
              • 2019-04-28
              • 1970-01-01
              • 1970-01-01
              • 2016-04-13
              • 2014-10-28
              • 2016-09-30
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多