引用自:
http://www.cnblogs.com/WJ1234/p/5285595.html
http://blog.163.com/yuyang_tech/blog/static/216050083201339111011377/
http://www.360doc.com/content/14/1231/10/19633547_437060025.shtml
http://blog.csdn.net/augusdi/article/details/6752054
http://www.cnblogs.com/AyaBrea/p/5285574.html
目前为止,程序版本控制软件还是有一些的,例如Visual Source Safe,Concurrent Version System,SVN,Microsoft TFS、GitHub、Trac、Bugzilla、Rationale,Apple XCode等软件。
Visual Source Safe,简称VSS,是微软出品的版本管理系统:
优点是配置起来比较简单,易于上手,而且,版本回退方便。
缺点是只局限于内网,开发者一旦离开,就无法再进行代码的更新合并了,并且,因为是微软出品,只支持windows系统,而且据用户反映,提交较大文件(50M)时,会出现问题。
Concurrent Version System,简称CVS:
优点是对中文路径支持的比较好,本地文件和库文件可以多对多。
缺点CVS不支持本地文件重命名提交,管理员很难清楚的知道一个项目到底有多少个用户各用户的权限和密码是什么只能用分组的方式管理用户而且密码和权限还是不清晰,并且,采用了完全用户可见的方式。
SVN是一种集中式的源码管理软件,是CVS的接班人:
优点是,速度比较快(相对于CVS而言),支持文件重命名提交系统会提示删除旧文件,创建新文件,有创建标志和分支dubious等功能。
SVN的工作流程是,所有开发者在开始新一天的工作之前必须从服务器获取代码,然后开发,最后解决冲突,提交。所有的版本信息都放在服务器上。所以缺点就是,如果脱离了服务器,开发者基本上可以说是无法工作的。
Microsoft TFS,同样是微软出品的系统:
优点是不论在本地还是 在云中,TFS 均可支持灵活的开发实践、 多个 IDE 和平台,并提供有效管理整个 IT 生命周期的软件开发项目所需的工具。
缺点是用浏览器访问,比较慢。
GitHub Git是一个分布式的版本控制系统:
优点是拥有pull request等强大功能,功能简介,易于上手。
缺点是对中文支持不够好,局部还原不够完美,在国内访问比较慢,而且,对于企业而言,价格比较昂贵。
Trac:
优点是使用非常灵活,可以和SVN集成。
缺点是,系统比较简单,功能和其他系统相比,不够强大。
Bugzilla:
优点是支持中文,再linux和unix扩展比较好。
缺点是快速搜索不准确,只能管理缺陷,不能管理测试计划,测试用例等。
Apple XCode,由苹果公司开发,编译器采用许多新的编译技术:
优点是编译速度快,自动向量化技术可以释放每台 Intel 系统中速度引擎的能量,同时有撤销,重做等功能。
缺点是系统更新不稳定,可能会有插件失效的情况。