版本管理软件和项目管理软件
1、Team Foundation Server(TFS)是这样一种服务器产品,它需要部署到软件开发环境中,这样开发人员就可以使用它提供的各种服务。因为TFS是设计用于大规模团队,因而有两种拓扑结构供选择:双服务器和单服务器。
优点:有微软最新配置管理工具、外包管理工具 ,具有过程引导、工作项跟踪、版本控制、自动生成报告功能
缺点:搭建、维护tfs比较复杂,硬件要求也比较高。
2、Git是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管理。在推出后,Git在其它项目中也取得了很大成功,尤其是在Ruby社区中。目前,包括Rubinius和Merb在内的很多知名项目都使用了Git。Git同样可以被诸如Capistrano和Vlad the Deployer这样的部署工具所使用。
优点:每一份复制出的库都可以独立使用,任何两个库之间的不一致之处都可以进行合并。
免费套餐不支持私有项目。
3、Mercurial 是一种轻量级分布式版本控制系统,采用 Python 语言实现,易于学习和使用,扩展性强。其是基于 GNU General Public License (GPL) 授权的开源项目。
优点:更轻松的管理。采用了分布式的模型,每个用户管理自己的 repository,管理员只需协调同步这些repository。 更健壮的系统。分布式系统比集中式的单服务器系统更健壮。 对网络的依赖性更低。由于同步可以放在任意时刻进行,Mercurial 甚至可以离线进行管理,只需在有网络连接时同步。
缺点:分布式的版本控制系统还是有一定缺陷的,比如权限控制的问题。
4、BitBucket 是一家源代码托管网站,采用Mercurial和Git作为分布式版本控制系统,同时提供商业计划和免费账户
优点:无限制的私有仓库个数、无限制的磁盘空间、同时支持https/ssh
缺点:网上评论没有找到缺点,一般认为它比github更有优点