代码之家  ›  专栏  ›  技术社区  ›  Nikwin

我应该在谷歌代码中使用哪些风投?

  •  5
  • Nikwin  · 技术社区  · 16 年前

    我即将开始一个项目,并考虑使用谷歌代码来主持它。它提供了使用Mercurial或SVN进行版本控制的选项。我以前从未使用过VCS,我想知道哪一款更容易使用。

    5 回复  |  直到 16 年前
        1
  •  12
  •   Steve Losh    16 年前

    使用Mercurial。

    这两个系统都很简单,但Mercurial将很简单 快速的 . 想比较一下别人昨晚做的事和你昨晚做的事之间的区别吗?有了SVN,当它与谷歌的服务器对话时,每个文件需要几秒钟的时间。有了Mercurial,它几乎是即时的。

    没有 这是一个巨大的痛苦的屁股。这也很酷。

    .svn 项目中每个文件夹中的文件夹。这些东西很难看(在Windows上默认情况下不会隐藏,就像在*nix系统上一样)。只会有一个 .hg 项目根目录下的文件夹,该文件夹更干净。

    编辑:使用Mercurial的另一个原因: hg bisect . 在10分钟而不是2小时内跟踪一个bug,因为您能够找到导致它的确切版本 . 看起来有一个Perl svn-bisect 工具,但它不在核心,而SVN在修订之间的更新缓慢将使其成为一个更长的过程。

        2
  •  1
  •   Alex Budovski    16 年前

    如果您以前从未使用过VCS,请选择其中一种。这两种方法都足以满足你的需要,你必须从头开始学习。

    Mercurial和git一样是分散的,但对于一个从未接触过源代码控制的2程序员团队,我不会太担心这一点。

    选择其中一个,然后忘掉它。

        3
  •  1
  •   Murph    16 年前

    简单的答案是SVN-点燃乌龟VN和乌龟Hg,你会发现前者在美学和可用性方面比后者领先一段距离,但我认为在这种情况下,简单的答案不够好。

    如果你打算第一次开始使用版本控制,我会很想(尽管我目前对SVN比Hg更熟悉)建议Mercurial是更好的方法。分布式版本控制(DVCS)目前提供了比Subversion更大的灵活性,因为它依赖于中央存储库。特别是在将已完成的更改推送到同事之前,您能够在本地提交尚未完成的代码。Mercurial有一本“书”,所以你有一套指导方针,并且它作为一种工具得到了广泛的认可,因此可以获得同行支持。

    我对DVCS的主要担忧是,由于各种原因,如果没有单独的服务器(或者至少没有不在您的开发设备上的存储库),我认为版本控制是不完整的。但是在这种情况下,您将拥有一个中央存储库。。。所以这个论点就不那么有效了。

    我有一个第二个问题,我认为应该尽早将持续集成服务器(构建和测试)引入到项目中,但同样,在共享/中央存储库的情况下,这可以通过DVC实现。

    我仍然认为SVN有一个 值得称赞的是,在可预见的未来,我们的工作库是SVN(请注意,我是决定的人!),但同样地,我也在用Mercurial做我个人的事情,并在不断学习。

        4
  •  1
  •   sbi    16 年前

    如果你从未使用过风投,你可能会很难/很容易使用其中任何一种。我不认为这有什么原则上的区别。然而,这两者之间的一个重要区别是SVN是集中的,Mercurial是分散的。

    如果您在没有网络访问的地方(飞机、火车等)工作,分散的VCS将允许您在开始新的更改之前在本地提交更改。稍后将与中央存储库同步。这很方便。

    集中式VCS不允许这样做。当然,您仍然可以处理代码,但由于您无法在更改之间签入,因此当您恢复对存储库的访问权限时,必须立即提交累积的更改。

        5
  •  -1
  •   Thomas Weller    16 年前

    这并不是因为SVN在功能方面比Mercurial好,而是因为SVN非常流行,有很多关于它的文档(例如免费电子书)以及一些非常好的免费插件(VS的AnkHSVN,Windows Explorer的TortoiseSVN)。我认为如果你以前从未使用过VCS,文档将很快让你启动并运行。。。

    嗯!

    推荐文章