从源头控制开始

时间:2008-09-19 15:43:48

标签: svn version-control cvs visual-sourcesafe

对于想要尝试某种源代码控制以及新的ASP.NET之旅的新手,有什么建议吗? SVN,VSS,CVS ......我甚至不知道从哪里开始!

29 个答案:

答案 0 :(得分:15)

确保您从视觉源安全stay away

答案 1 :(得分:14)

Eric Sink的Source Control HOWTO

阅读它,然后下载Subversion(免费)或Vault(对单个用户免费)并开始玩它。

答案 2 :(得分:12)

这里有很多人建议介绍和全面的方法,这些都有助于告诉你如何做你想做的事。

另外,我会为新手提供三条建议,告诉你如何知道自己想要的东西:

1)版本控制一切(即你写的所有内容)。

版本控制项目文件。版本控制您的测试用例。版本控制用于复制内容的任何小脚本。版本控制您的待办事项列表。绝对版本控制您的设计笔记。一旦你熟悉这些命令就没什么代价了,有一天你会对你从未想过需要回滚的文件的历史感到高兴。

2)如果您对更改感到满意,请立即检查。检查一下。

如果你按顺序步骤工作(并不总是这样 - 你可能会分心 - 但这是一个好习惯),然后在每个新步骤开始时你应该在结账时有0个修改过的文件。您甚至可能想要检查未完成的非工作代码,具体取决于您的选择。

3)当您到达里程碑时,请标记它。

甚至是你自己的个人目标(英寸鹅卵石)。如果你不能被标记困扰,只需记下日期和时间(在你猜对了,一个版本控制的文件)。如果特定版本由于某种原因而令人难忘(“我完成了后端”,“我将其发送给其他人查看”),您想要确切知道其中的内容。对存储库进行区分可以比调试器更快地诊断出某些类型的错误。

答案 3 :(得分:8)

特定于Subversion,但它可以很好地理解版本控制的基础知识。

http://svnbook.red-bean.com/

答案 4 :(得分:5)

我认为最简单的方法是通过一些免费提供商获得免费的SVN服务器。我使用assembla

然后,如果您在Windows中,则应下载TortoiseSVN。这是迄今为止最容易使用的Subversion客户端。

首先将当前项目导入存储库,然后就可以开始了。

答案 5 :(得分:3)

我会推荐Subversion或Visual Studio Team Foundation Systems,具体取决于您愿意花多少钱。

查看Visual SVN(Subversion for die-hard VS fans) - 它与Visual Studio很好地集成:http://www.visualsvn.com/

答案 6 :(得分:3)

我建议SVN开始使用,比其他人更容易掌握。

Tortoise是一个好的开始。它很容易安装并与windows shell集成,这意味着右键单击文件夹/文件等一切都非常直观。非常好的文档。

你还需要一个SVN服务器/主机来联系......我可以推荐Assembla免费注册,并为你提供一个SVN服务器。

答案 7 :(得分:2)

获取“使用Subversion实用版本控制”一书的副本 - 它将帮助您入门。

Image http://ecx.images-amazon.com/images/I/51XYQTP2BYL._SL500_AA240_.jpg

答案 8 :(得分:2)

现在我将从分布式系统开始。它们更容易设置(您不需要设置服务器和/或在线查找:只需init一些随机目录并开始执行您的操作)并且同样容易/难以理解集中的。

以下是人们在选择分布式版本控制系统时应该注意的一些内容:

如果你被困在Windows中,我会远离Git(至少目前是这样)。似乎有support for Git on Windows正在进行中,但我还没有尝试过。

答案 9 :(得分:2)

如果您刚开始使用,我建议您阅读免费的Subversion book。它是一个广泛使用的系统,免费,一旦你开始就应该相对容易理解。

答案 10 :(得分:2)

由于还没有人提及此问题,我建议您同时查看Git。甚至还有一个免费的源托管服务:github

答案 11 :(得分:2)

如果您是100%.NET,并且拥有MSDN开发人员许可证,请运行TFS for Workgroups。它非常简单而且坚固。

如果您没有许可证,请查看Subversion。它是一个很好的免费源代码控件,具有Visual Studio集成的插件。

答案 12 :(得分:2)

我首先使用tortoise svn介绍svn,喜欢它,后来一家公司使用Visual Sourcesafe,我错过了使用乌龟。

答案 13 :(得分:1)

颠覆ftw。

答案 14 :(得分:1)

必须二读Subversion书。此外,该软件是免费的,可在大多数环境中运行,并且很容易上手。

答案 15 :(得分:1)

使用什么源代码控制权取决于您的环境,企业文化以及公司如何处理项目的一般情况。团队基金会中较新的“Visual Source Safe”比VSS曾经的那种简单易懂。并且在拥有一个或几个位置的Microsoft商店中表现良好。我也非常成功地使用了Subversion,它很好地集成到了Eclipse中。我想,我不喜欢放下产品,因为它们都有积极和消极的观点。但我上面提到的两个是非常好的源/版本控制产品。如果您刚刚开始并且想要了解并学习源代码控制实践和一般概念,请下载CVS或Subversion等开源产品,加载并试用。

http://www.ericsink.com/scm/source_control.html有一些很好的信息可供使用。

- 我正在重新编辑此评论,注意它看起来像其他人在之前的帖子中链接到该源代码控制链接。 :) darn it,我不是第一个发布它的人。

答案 16 :(得分:1)

仅仅安装工具是不够的。您需要了解特定技术的工作原理(如SVN)以及整个源树应该如何工作:最佳结构,标记,分支,合并等等。由于我们使用SVN,因此我推荐Subversion Book。它对源控制概念有一些很好的解释。

答案 17 :(得分:1)

查看Subversion(SVN)以启动。正如其他帖子所建议的那样,有一个很好的免费ebook,它不仅涵盖了如何使用SVN,而且是概念的良好开端。

要轻松设置服务器,请查看VisualSVN中的免费服务器。

如果使用Visual Studio,则可以使用其加载项(成本)或开源Ankh SVN addin。如果您正在使用其他IDE,Tortoise SVN将与Windows中的资源管理器集成。

答案 18 :(得分:1)

Pragmatic系列有两本我读过的最好的书籍,可帮助您掌控版本控制。它们的版本为SVNCVS。我非常喜欢他们关于标签和分支的章节。

答案 19 :(得分:1)

从Subversion开始。 documentation is onlinePragmatic Programmers Svn book很棒。

如果你在Windows上,你也可以获得TortoiseSvn(免费)进行资源管理器集成,或VisualSvn(商业)进行Visual Studio集成。对于Mac,Versions看起来像一个很好的独立客户端,而XCode 3内置了svn集成。我仍然会在命令行中花一点时间使用svn客户端来真正弄清楚你的'做的。

在熟悉svn的工作方式之后,你就可以进入像Git,Bazaar或Mercurial这样的分布式版本控制系统,但是我看到有足够的专业开发人员在版本控制的基础知识(包分支)中遇到问题合并等)在转移到分布式系统之前,我会先熟悉它。

远离Visual SourceSafe(VSS)。这是大便。您的代码安全。有关不使用VSS的原因,请参阅these many links

答案 20 :(得分:0)

答案 21 :(得分:0)

对Subversion / TortoiseSVN的另一次投票,但请注意它与FAT32国内NAS不能很好地搭配。

答案 22 :(得分:0)

尝试Unfuddle免费托管SVN源代码控制。

答案 23 :(得分:0)

我一直对整个源控制社区失去信心。 每个人都说VSS太糟糕了,喜欢那些旧的偏见,C ++比C好,Win Vista太糟糕了,XP太老了,不能为世界服务。但仍有很多人使用它们。 在使用它之前,你永远不知道你想要一个工具。每个版本控制应用程序都包含错误和缺陷。 VSS很难放弃。

答案 24 :(得分:0)

对我使用的产品的评论:

VSS - 现在(几年)没有使用过它,当时它已经完成了我们想要的基础知识,但我们经常遇到各种各样的问题,我们积极寻求更好的解决方案。如果你有免费访问权限,那么接触他们的实现以了解当时处理问题的不同方式(他们现在可能已经与其他产品保持一致)并没有什么坏处

CVS - 在以前的公司使用它,并与tortoiseCVS的原作者合作,所以我有点偏见或许认为它是一个不错的开源解决方案。我建议从这里开始,每个人都可以轻松获得并广泛使用。

Perforce - 我们公司目前的源代码控制解决方案,并且在团队中非常受欢迎。人们可以选择的几个替代UI和良好的命令行支持(对工具交互至关重要)。如果您正在评估公司,我肯定会将其列入您的列表中以供查看。

答案 25 :(得分:0)

我建议尝试使用免费的分布式版本控制系统。其中大多数都很容易在您的个人电脑上设置,并提供良好的文档。 这是我的最爱  巴扎  2. Mercurial  3. Git(据我所知,仅适用于基于* nix的系统)

请在此处查看列表:

http://en.wikipedia.org/wiki/List_of_revision_control_software

答案 26 :(得分:0)

我认为分级版本是分布式版本控制系统(如mercurial或git)。使用它有一些优点:

  1. 您不需要设置中央存储库(它需要繁琐的服务器设置)
  2. 您可以使用电子邮件或其他方法与朋友分享更改集(修订版),并将更改安全地集成到您的存储库中。
  3. 您可以轻松修改修订历史记录(rebase,git支持它),SVN无法做什么。

答案 27 :(得分:0)

在我看来,如果您已经拥有Viual Source Safe并且您是一名与VS合作的开发人员,那就完全没问题了。它是一个简单的系统,适用于小型单一开发人员项目。我已经使用它多年没有任何麻烦的小项目。易于管理和备份。

答案 28 :(得分:-2)

Visual Source Safe(VSS)适合初学者,因为你不会知道你缺少什么。当你需要更复杂的东西时,那就担心得到其他产品。