In SIO2 project we use various development tools.
Git is a version control system we use to control changes and versions. When you create a change, you can use git push origin HEAD:refs/for/master to send it for review.
Github is our source code hosting site. It's a popular place, where source code can be shared, browsed and downloaded.
Gerrit is a system allowing us to review changes. Each change someone makes to the code should be verified by Jenkins (below) and read by another programmers (which approve it or send back some information about flaws, errors and problems in the change) before being submitted. See How to Create a Change for more information.
Every change you make is sent to Jenkins to perform some basic tests — to check, if the code compiles and passes unit tests, if the database migrations work and if the automatically generated documentation compiles without warnings. When you send a change to Gerrit, Jenkins automatically checks it and notifies you (marking your change in Gerrit as 'verified').
Errors on production instances are automatically captured and clustered, so that we never get hundreds of emails for the same problem. This is possible thanks to Sentry.
Confluence is a wiki system used for managing SIO2 documentation, manuals etc. This document resides in Confluence.
We provide a configuration for Vagrant, which is an easier way to start developing, without the necessity to install the entire OIOIOI stack manually.
Read the Docs is a free online service for hosting documentation. It automatically synchronizes with the Git repository, auto-generating documentation with every change.