版本控制和托管比较

版本控制和托管比较

问题描述:

我知道这个问题以前曾以不同的形式被问过很多次,并且我是一个无知的n00b,因为我认为我可以在讨论中添加任何内容.但是,我不仅对版本控制系统感兴趣,而且对它的托管选项,兼容的应用程序和Windows兼容性也很感兴趣.

I know that this question has been asked many times before in different guises and that I'm an ignorant n00b for thinking that I could add anything to the discussion. However, I'm interested not only in the version control system but also in its hosting options, compatible applications, and Windows compatibility.

如果您没有使用多个系统的经验,请告诉我使用什么:版本控制系统,代码托管,实现(vc程序)和OS.

If you don't have experience with more than one system, tell me what you use: version control system, code hosting, implementation (vc program), and OS.

我只有几个限制:

  • 我想使用在Linux和Windows上都能正常运行的程序.这意味着至少有一个等效的命令行界面.
  • 实现必须足够稳定,以至于我不必在Linux上不断地重新编译,而从不需要在Windows上进行编译.
  • 版本控件必须至少具有一个兼容的免费代码托管站点(用于开源项目).如果托管站点本身是开源的,那将是理想的选择.
  • 版本控制标准必须是开源的.
  • I'd like to use a program that works well in both Linux and Windows. That means at least an equivalent command-line interface.
  • The implementations must be stable enough that I don't have to constantly re-compile on Linux and I never have to compile on Windows.
  • The version control must have at least one compatible free code hosting site (for open-source projects). If the hosting site itself is open-source, that would be ideal.
  • The version control standard must be open-source.

对不起,如果我听起来像个要求苛刻的小伙子,请其他人做出他的决定.我只是想从您的经验中学习,这样就不必反复切换版本控制系统.

Sorry if I sound like a demanding brat asking for other people to make his decisions. I just want to learn from your experience so that I don't have to switch version-control systems repeatedly.

首先,您可能会从ACM Queue中最近发表的这篇文章中受益:
了解版本控制系统

First off, you might benefit from this recently published paper in the ACM Queue:
Making Sense of Revision-control Systems

我将概述最了解的两个,其余的可以告诉您.

I'll outline the two which I know the most about, others can tell you about the rest.

SVN:

  • Probably the best windows support out of all modern open source SCM's
  • Simple work flow similar to most standard SCM's
  • Many free open source hosts: http://code.google.com/projecthosting, http://unfuddle.com/about/tour/plans
  • http://www.svnhostingcomparison.com/
  • Many good clients. Tortis SVN, Subclipse, straight cli and many more.

GIT:

  • 极其强大的单片机
  • 在源代码树的每个签出中完整的源代码历史记录.
  • 不是最大的Windows支持,但是目前正在取得很大的进步. http://code.google.com/p/msysgit/
  • 许多免费主机: github repo.or.cz
  • 当前的酷小子"在博克身上.
  • Extremely powerful SCM
  • Full source history in every checkout of the source tree.
  • Not the greatest windows support, but making great strides of improvement currently. http://code.google.com/p/msysgit/
  • Many free hosts: github, repo.or.cz
  • The current "cool kid" on the bock.

听起来您可能只想使用svn. 听起来您只是想让版本控制下的内容,这样您就不必担心与GIT相关的学习曲线了.

It sounds like you might just want to go with svn. It sounds like you just want to have stuff under version control, this way you won't have to worry about the learning curve associated with GIT.

其他要看的东西,但是由于缺少Windows工具(Mercurial,Darcs和Bazaar),我没有详细说明. 如果您确实要检查商品,则可以使用 bitbucket

Others to look at, but I didn't detail because of general lack of windows tools: Mercurial, Darcs, Bazaar. If you do check out mercurial you can use bitbucket and google code as a host.