Passionate about technologies, innovations.

Git:更好的SCM版本管理系统

一直在忙着工作的事情,清闲下来准备一下毕业项目的资料。特别是代码版本管理的软件,有考虑到CVS, SVN等等,这些大多数是中心服务器结构的管理,最近看到Google工程师开发的Git, 让我感到一阵兴奋。

Linus Torvalds 开发了Git,一开始主要因为CVS和SVN不能满足开源的需求,需要一种新的方式管理Linux Kernel。Git是一个distributed SCM(Source Code Management). 他的最大优势在于开发人员可以随意的创建自己的Brunch,简便多版本的整合(merge)问题,并且优化下载速度。

如果有人用过CVS, SVN在一个开发小组,都会发现这样的问题:大家都不能Commit,直到觉得代码被第二个开发人员review过,或者通过测试才可以,这样才能保持Source trunk的整洁。这样是件很麻烦的事情,如果在SVN, CVS上创建branch, 做自己的一些新功能的试验,也会造成麻烦,你会想到底用什么tag? 大的公司里面会有一堆的规则创建branch(加B下划线版本号码等等),然后整合到trunk上又给自己代来一堆麻烦,所以如果用过centerailized SCM开发人员大都会在trunk上开发。

如果你是一个充分利用Brunch的开发人员,那Git可以是一个不错的选择。给个Git官方网站,还有YouTube 2005年的Git开发介绍会(一个小时的录像)。

Comments