Version control 大学新生学习版本控制

Version control 大学新生学习版本控制,version-control,Version Control,我是一名大学计算机系一年级新生,希望学好版本控制系统。目前我正在研究Subversion、Perforce和Around SCM 我将在Linux平台上将系统与Eclipse集成。涉及的代码主要是C++、java和胶乳(我也将使用Eclipse)。 我很可能是唯一的用户,但是SVN的优势在于它是开源的,而另外两个是专有的。我听过很多关于侵权行为的好评价,但由于我使用的是Linux,我将错过这一点 编辑:谢谢所有的答案。当然,我也对任何其他版本控制系统持开放态度。我将检查Git和Myalial.

我是一名大学计算机系一年级新生,希望学好版本控制系统。目前我正在研究Subversion、Perforce和Around SCM

我将在Linux平台上将系统与Eclipse集成。涉及的代码主要是C++、java和胶乳(我也将使用Eclipse)。 我很可能是唯一的用户,但是SVN的优势在于它是开源的,而另外两个是专有的。我听过很多关于侵权行为的好评价,但由于我使用的是Linux,我将错过这一点


编辑:谢谢所有的答案。当然,我也对任何其他版本控制系统持开放态度。我将检查Git和Myalial.

< P>如果你正在学习版本控制系统,你一定要考虑一个更新的“分布式”版本控制系统,比如OR。通过将您的范围限制在您提到的上一代工具,您将错过(一些)人们今天真正使用的东西


对于学习一个系统,我可能不建议选择商业产品。使用开源解决方案,您将免费获得更好的支持和文档。

如果您将成为项目中唯一的一位,那么您一定要查看SVN。Get,一个用于Subversion的Eclipse插件,并习惯于此。然后,一旦您感觉舒适,就转到其他版本控制系统。

如果这些是您唯一的选择,一定是SVN。这是真实的人们在野外使用的一个(从列表中)

老实说,不过,学习DVCS。Git,Mercurial,darcs,其中之一。

我想第二(或第三)个建议Git或Mercurial(或Bazaar)的人。分布式版本控制系统不仅仅适用于有多个贡献者的项目;我开始的任何项目都使用Git,即使它们只是一次性的。基本上,您的开发文件夹就是您的存储库-它是可移植的,并且很容易添加更多的贡献者,并在以后转移到更传统的集中式工作流


我推荐Git,特别是因为它有一个陡峭的学习曲线,但它教会了我很多关于项目管理、版本控制、如何合并和修补文件、如何读取“diff”输出等方面的知识。它确实让你深入了解版本控制的细粒度细节。

你可能会发现Performce值得一读,例如。

SVN很容易学习。对于那些确实使用Windows的人来说,GUI版本非常好


即使您正在运行Linux,我仍然建议您学习它,因为它广泛应用于谷歌代码、Python、Wordpress等领域。

Bazaar对于单人、无服务器的开发来说绝对是棒极了。它需要整整五分钟的时间来设置,而且它可以立即工作。它具有大型风投的力量。。。但它很容易单独使用


我听说Git和Mercurial的想法是一样的。。。但我只使用了Bzr

我推荐Subversion,因为它在开源项目中无处不在。肯定有很多机会将您的Subversion知识用于开源项目,如果您这样做,您将学到很多关于编码、团队合作以及在团队中正确使用VCS的知识(这是学习使用VCS的一半,而且是很难的部分,因为您自己无法很好地学习)。使用专有VCS的开源项目越来越少,这意味着在现实世界中使用它们的机会越来越少,除非你是专门与朋友一起工作或作为一份工作。我没有使用你提到的另外两个,但是我对Subversion没有任何抱怨,它的使用非常简单

我还想推荐一种分布式VCS,比如git。对于分布式VCS,由于项目中的每个参与者都有一个源存储库的完整副本,并且可以完全控制自己的副本,这意味着您可以更灵活地使用VCS功能。您将发现,您可以自由地随时提交,并随时创建新的分支,这在您对代码进行更改并且希望能够在必要时返回到旧版本时非常有用。分布式VCS允许您将VCS用作帮助编码的工具,而不仅仅是作为存储和与他人共享代码的方式。在分布式VCS中设置新的存储库也非常容易。使用git,您只需运行
gitinit
,它将在当前目录中设置版本控制。这有多容易