Committer


A committer is an individual who is permitted to modify the source code of a software project, that will be used in the project's official releases. To contribute source code to most large software projects, one must make modifications and then "commit" those changes to a central version control system, such as Git.
In open-source software development, the committer role may be used to distinguish commit access, a specific type of responsibility, from other forms of contribution, such as triaging issues or organizing events. Typically, an author submits a software patch containing changes and a committer integrates the patch into the main code base of the project.

Commit bit

To have a "commit bit" on one's user account means that the user is permitted to contribute source code changes. This dates to the use of a literal binary digit to represent yes-or-no privileges in access control systems of legacy version control and software systems, such as BSD.
The commit bit represents the permission to contribute to the shared code of a software project. It can be resigned or may be removed due to inactivity in the project, as dormant committer accounts can represent security risks.

Common responsibilities

Project committers are usually the lead developers of a project and are the ones responsible for the majority of changes. They are seen as trusted, responsible and reliable members of the project's community. Relatedly, committers are usually responsible for the review of patches submitted by members of the community for inclusion into the software. After a successful review, usually consisting of conformance to coding standards and ensuring it does not introduce any new bugs, the committer will commit that specific patch on behalf of the patch submitter.

Becoming a committer

The process to becoming a committer can vary across projects, but in general, there are three common ways to do it.
  1. Be one of the original developers
  2. Be appointed by one of the original developers
  3. Be successfully voted in by the community of committers
Becoming a committer in an existing project often involves becoming active on both the mailing lists as well as with supplying patches. After enough involvement, the other committers can then vote you in as a new committer. This normally happens through an e-mail vote. The XML-SOAP project hosted at Apache.org is an example of this process.