为一个非常小的团队选择GIT或SVN

时间:2011-02-28 22:15:56

标签: svn git frontend

我的团队实际上只由我自己和一两个人组成。我主要从事业余爱好项目和我的网站,每周写1000行代码。

我想开始进入版本控制系统,但由于我的大部分项目都由我自己处理,所以我没有看到太多意义。我最近注册了一个GITHub帐户,我不得不说我喜欢它,我认为它比SVN更容易使用(除了下载存储库之外我没有任何SVN经验)。

我唯一的要求是我必须能够拥有我的存储库的Web前端(就像GITHub上的那个)。没什么好看的,但我必须能够看到项目中的文件以及对特定文件所做的更改。

除非原因尚不清楚,否则除了网络前端之外,我没有GIT或SVN的偏好。根据我提供的信息,哪一个对我更好?

5 个答案:

答案 0 :(得分:9)

如果您现在开始使用其中一个,请务必使用 Git !去年开始使用Git(和Mercurial)之前,我已经使用了Subversion几年了。我已经将所有Subversion存储库转换为Git或Mercurial。你不想回去!

我在某些项目中使用Mercurial的原因是bitbucket.org,它允许您免费拥有私有存储库(更新:现在还有git repos)。 Github.com并未向您提供私人存储库,gitorious.org但我自己从未尝试过。

两者都有很好的原生用户界面,最值得注意的是Mac,MurkyGitX(更新,更好,SourceTree(Mac App Store),适用于git和Mercurial或github自己的Mac app),我认为Linux和Windows也有类似的。

对于任何代码,请继续使用Git。能够回到以前的版本总是好的,一旦你掌握了Git,你就会喜欢它。

答案 1 :(得分:7)

Git和SVN是非常不同类型的动物 - Subversion有一个集中的存储库,而Git是一个分布式系统。任何一种系统的许多支持者都对另一种系统说不好。

我认为您会发现,根据您的需求,它们都提供您需要的所有功能,等等。既然你还没有被任何一个源控制范例灌输,那就选择你喜欢的那个。 Subversion是更老,更成熟的系统,并且具有更好的工具,但在我看来,源控制系统无论如何都可以从命令行使用:)

如果您愿意使用开源许可证授权您的软件,Github是分享您的代码的好地方,而且社区充满活力。你可能比在那里托管你的代码更糟糕。

答案 2 :(得分:6)

Martin Fowler撰写了一篇很好的文章,比较了Git,Mercurial和Subversion - http://martinfowler.com/bliki/VersionControlTools.html。他讨论了集中式和分布式VCS的优缺点。

我认为,从您的角度来看,如果您对github作为前端感到满意,以及它提供的其他协作工具,那么请坚持下去。

答案 3 :(得分:5)

我个人使用Google Code并使用SVN。但原因是我使用Visual Studio和Windows。 AnkhSVNtortoisesvn在Windows和Visual Studio上与SVN配合得非常好。

至于GIT,如果您在Linux环境中工作,GIT内置并且运行良好。与SVN相比,Windows上的GIT(IMHO)有点笨拙,但在Linux上,GIT是最好的方式。

简而言之:

Linux = GIT Windows = SVN 但无论哪种方式,你都可以参加小型项目

答案 4 :(得分:2)

嗯,你必须考虑Linux之外的git支持是一种粗略的,虽然它似乎在技术上优于SVN。

此外,您的项目是开源的吗? GitHub对于闭源项目不是免费的。