1. Code Warehouse Management: Gitlab
Gitlab is an open source application developed using Ruby on Rails to implement a self-hosted Git project repository that can be accessed through a web interface for public or private projects.
It features a similar feature to GitHub, with the ability to browse source code, manage defects, and annotate. You can manage the team's access to the warehouse, which makes it easy to browse through the submitted version and provide a file history library. Team members can communicate using the built-in simple chat program (Wall). It also provides a code snippet collection feature that makes it easy to implement code reuse, so you can find it later when you need it.
GitLab requires the server-side Gitolite build (for easy installation, has now used Gitlab-shell instead of gitolite[1]). [2]
2. Code review: Gerrit
In order to ensure the stability of the code base, team collaboration often need to Code-review, Gerrit is born for this, Gerrit is an open source code review software, using the Web interface. Using a Web browser, the same team of software programmers can review each other's revised code, decide whether to submit, return, or continue to modify. It uses the version control system, git as the bottom.
3. Project defect and schedule management: Redmine
Part of the overlap with Gitlab's functionality, he is a code defect management and tracking software, but more focused and naturally more powerful, it integrates the various functions required for project management: calendars, burndown charts, and Gantt charts to assist with visual presentation of project and time constraints, issue tracking and versioning. In addition, Redmine can handle multiple projects at the same time.
4. Continuous Integration: Jekins
Jenkins is an open source, continuous integration tool written in Java. After a dispute with Oracle, the project was re-carved from the Hudson project.
Jenkins provides continuous integration services for software development. It runs in a servlet container (for example, Apache Tomcat). It supports software configuration management (SCM) tools (including Accurev SCM, CVS, Subversion, Git, Perforce, ClearCase, and RTC) to execute projects based on Apache Ant and Apache maven. As well as any shell scripts and Windows batch commands. The main developer of Jenkins is Cks. [2] Jenkins is a free software release under the MIT License. [3]
Builds can be triggered by various means. For example, it is triggered when it is submitted to a version control system, can be dispatched through a cron-like mechanism, or it can be requested through a specific URL when other builds are complete.
5. wiki system: Media wiki, Gollum
Project management: Introduction to code Warehouse management, Project schedule management and continuous integration tools