1. 代码仓库管理:gitlab git
gitlab是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的Git项目仓库,可经过Web界面进行访问公开的或者私人项目。程序员
它拥有与GitHub相似的功能,可以浏览源代码,管理缺陷和注释。能够管理团队对仓库的访问,它很是易于浏览提交过的版本并提供一个文件历史库。团队成员能够利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片断收集功能能够轻松实现代码复用,便于往后有须要的时候进行查找。shell
GitLab 要求服务器端采用 Gitolite 搭建(为了方便安装,现已经用gitlab-shell代替Gitolite[1])。[2]浏览器
2. 代码审查:gerrit 服务器
为了保障代码库的稳定性,团队协做的时候一般须要进行code-review, Gerrit就是为此而生,gerrit是一种开放源代码的代码审查软件,使用网页界面。利用网页浏览器,同一个团队的软件程序员,能够相互审阅彼此修改后的代码,决定是否可以提交,退回或是继续修改。它使用版本控制系统,Git做为底层。工具
3. 项目缺陷与进度管理:redmine gitlab
与gitlab的功能有部分重叠,他是一个代码缺陷管理和跟踪的软件,但更专一,天然功能上更增强大些,它整合了项目管理所需的各项功能:日历、燃尽图和甘特图 以协助视觉化表现专案与时间限制,问题跟踪和版本控制。此外,Redmine也能够同时处理多个项目。开放源代码
4. 持续集成:jekins版本控制
Jenkins是一个用Java编写的开源的持续集成工具。在与Oracle发生争执后,项目从Hudson项目复刻。code
Jenkins提供了软件开发的持续集成服务。它运行在Servlet容器中(例如Apache Tomcat)。它支持软件配置管理(SCM)工具(包括AccuRev SCM、CVS、Subversion、Git、Perforce、Clearcase和和RTC),能够执行基于Apache Ant和Apache Maven的项目,以及任意的Shell脚本和Windows批处理命令。Jenkins的主要开发者是川口耕介。[2]Jenkins是在MIT许可证下发布的自由软件。[3]
能够经过各类手段触发构建。例如提交给版本控制系统时被触发,也能够经过相似Cron的机制调度,也能够在其余的构建已经完成时,还能够经过一个特定的URL进行请求。
5. Wiki系统:media Wiki, Gollum
6. 管理仓库集合 : repo