【问题标题】:Source control in Visual Studio 2010?Visual Studio 2010 中的源代码管理?
【发布时间】:2013-05-16 13:23:44
【问题描述】:

在 SO、Google 和 MSDN 论坛上进行了一些搜索后,我感到很沮丧,因为对于一个看似显而易见且可能是愚蠢问题的信息却如此之少。

我需要在 Visual Studio 2010 Professional 中使用源代码管理。我没有单独的 Team Foundation Server 2010。有人提到 SourceSafe?老实说,我还没有在 Visual Studio 2010 中看到任何 SourceSafe。

Visual Studio 2010 中的源代码控制有哪些替代方案(最好是免费的)?还是它已经集成在 Visual Studio 2010 中,以至于我很盲目地错过了它?

更新 #1:谢谢大家,我将使用 SVN,尤其是 Visual Studio 2010 的 AnkhSVN。

2011 年 3 月 23 日更新:我问这个问题已经快一年了。我强烈推荐使用 Mercurial 或 Git 而不是 Subversion。因此,对于那些正在寻找 Visual Studio 2010 版本控制系统的人来说,只需从 Visual Studio 扩展库中寻找 Git 或 Mercurial 扩展即可。

2013 年 5 月 16 日更新:我现在强烈建议您使用 Git 而不是 Mercurial、TFS 或 SVN。在浏览器中看看 CodeSchool 的 Try GitHub,看看它有多棒!

【问题讨论】:

  • 感谢您最近的建议。对于像我这样刚开始使用源代码控制系统的人特别有用。 +1
  • 非常感谢您更新问题。你还推荐使用 GIT 进行源代码控制吗?

标签: visual-studio-2010 git version-control visual-studio-2012 visual-sourcesafe


【解决方案1】:

见:List of Source Control Systems with Visual Studio Plugins


Visual Studio 只是一个 IDE。您可以使用任何您想要的源代码控制解决方案。特别是任何开源源代码控制解决方案,例如 git、mercurial (hg) 或 subversion (svn)。还有像 Perforce 或 SourceGear Vault 这样的商业产品。请参阅 here 以获取非常详尽的列表,并通过 google 获取更多信息。

您可以找到将它与任何源代码控制集成的 Visual Studio 插件。开源的颠覆在这方面尤为丰富。商业产品通常带有这种集成。

如果您不使用需要显式签出文件以进行编辑的源代码控制(如 VSS 或 TFS 那样),那么 IDE 集成甚至不是必需的。我个人更喜欢在 IDE 之外使用 git 或 subversion。


请尽可能远离Visual SourceSafe。

【讨论】:

  • @Andrew Flanagan:我相信这里的工作没有恶意。 VSS 中没有邪恶。只是懒惰和愚蠢。
  • Git 让我克服了对命令行的恐惧,对此我感到非常高兴,如果您在 Visual Studio 之外从事工作,它在开源社区中也很受欢迎。 appharbor.com 是推送正在开发的 .NET Web 应用程序的好地方,
【解决方案2】:

我在服务器端使用Ankh SVN 和Subversion,它对我来说很好用。 Mercurial 和 Git 最近比 SVN 更受欢迎,还有 Visual HG,Visual Studio 的 Mercurial 插件。

编辑:与此同时,我切换到 Mercurial(乌龟 HG 加视觉 HG)并且再也没有回头。如果您来自 Subversion,则需要几个小时来习惯 Mercurial,但在那之后它真的很容易。即使您不需要分布式 CVS,Mercurial 仍然有许多 Tortoise SVN 中没有的不错的功能。另外,它确实看起来更稳定一些,尤其是在分支方面。

【讨论】:

  • 在 SO 上有一篇很棒的文章比较了 Git 和 SVN。我会坚持使用 SVN,因为它非常适合我的需求! ;)
  • @Rihanna.Rain:我也是,但我上次在 SO 上推荐 SVN 时受到了很大的影响,我想我最好也指出替代方案......
  • 谢谢你 - 直到现在我还不知道 VS 和 Mercurial 之间有任何集成。这可能正是我所需要的!
【解决方案3】:

让我在与 Visual Studio 2010 集成的 SCM 列表中再添加一个选项:Plastic SCM。你可以查看it looks like here如何。

有一个社区版可用。

【讨论】:

    【解决方案4】:

    @Tomek 建议使用 Subversion。

    查看这篇文章,它将帮助您在 VS2010 中使用 subversion 和 AnkhSVN(VS 插件)

    Visual Studio 2010, subversion with AnkhSVN

    【讨论】:

    • 我没有建议使用颠覆。我只展示了流行替代品的指针。实际上,如果我必须推荐一些东西,那就是 git 或 mercurial(取决于你的口味,我更喜欢 git)。 Subversion 具有相对简单和成熟的特点(因此有很多好的工具,包括 VS 插件和简单的 lovely TortoiseSVN)。但我不喜欢它,因为它无法从文件夹中分辨出它的分支,而且根本无法合并。不如 TFS 糟糕,但仍然......
    【解决方案5】:

    我在项目中使用过 Subversion 和 Mecurial,它们都让我回想起曾经使用过令人讨厌的(有充分理由的)Visual Source Safe 的工作。两者都将“工作”,但都显示了它们的 unix 程序员根源(没有双关语),带有神秘的错误消息和愚蠢的黑魔法书呆子。源代码控制应该简单、可靠并且不碍事。 SNV 和 Mecurial 都不符合条件。如果没有任何问题,Mecurial 会更容易使用 - 大约有 80% 的时间。

    如果您是一个单独工作的开发人员,我会使用 Mercurial。

    以下是我讨厌这些的示例:

    推送到 Z:\Repos\SupplierAdminWebRepo 寻找变化 分支“默认”上的新远程头 [错误:中止:推送创建新的远程头9cfbad6249a9!] 新遥控头 9cfbad6249a9 [错误:(你忘记合并了吗?使用push -f强制)]

    [操作完成。退出代码:255]

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-16
      • 2019-04-12
      • 1970-01-01
      • 2012-06-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-14
      相关资源
      最近更新 更多