我已经尝试过对几个项目使用源代码控制,但仍然没有真正理解它.对于这些项目,我们使用了TortoiseSVN并且只进行了一行修订.(没有主干,分支或其中任何一个.)如果有建议的方法来设置源控制系统,它们是什么?设置它的原因和好处是什么?集中式和分布式源代码控制系统的工作原理之间存在什么根本区别?
将源代码控制视为源代码的巨大"撤消"按钮.每次办理登机手续时,您都会添加一个可以回滚的点.即使您不使用分支/合并,单独使用此功能也非常有价值.
此外,通过拥有一个"权威"版本的源代码控制,备份变得更加容易.
集中式与分布式......差异实际上是分布式的,不一定是源控件的一个"权威"版本,尽管在实践中人们通常仍然拥有主树.
分布式源代码控制的一大优势是双重的:
使用分布式源代码控制时,您在本地计算机上拥有整个源代码树.您可以提交,创建分支,并且可以像单独使用一样工作,然后当您准备好推送更改时,可以将它们从计算机升级到主副本.如果你正在"离线"工作很多,这可能是一个巨大的好处.
您无需征得任何人的许可即可成为源控件的分销商.如果人员A正在运行项目,但是人员B和C想要进行更改,并且彼此共享这些更改,则使用分布式源代码控制会变得更加容易.
我建议从Eric Sink查看以下内容:
http://www.ericsink.com/scm/source_control.html
拥有某种版本控制系统可能是程序员审查代码更改和了解谁对谁做了什么最重要的工具.即使对于单人项目,能够将当前代码与先前已知的工作版本区分开以了解由于更改而可能出错的内容也是非常宝贵的.