Criteria for GIT @ ASF

This list describes all points which MUST be met for GIT to become an accepted SCM for ASF projects.

Technical

  1. The preservation of the commit history MUST be guaranteed. It SHOULD be practically impossible to delete, tamper with, or alter any piece of commit history which made it into an official ASF release.
  2. Changes MUST be submitted by an authenticated committer, over a secure connection. It SHOULD not be possible to fake the committer id and thus taint the commit history.
  3. In cases where the committer is not the author, the committer is REQUIRED to ensure that the author has granted the code to the ASF under the terms of the Apache License or that the contribution is sufficiently trivial to waive this requirement.

  4. The single canonical project repository (repositories) MUST be hosted on ASF servers under full control of the ASF infra team.
  5. There MUST be no other legal problem because of the usage of GIT as canonical repository.
  6. The canonical GIT repo hosted at the ASF MUST be the repo to cut official ASF releases from.
  7. ASF Infrastructure MUST provide backups of the repository and MUST be able to guarantee reasonable uptime of the services.
  8. A set of community policies or procedures SHALL be defined, and the community SHALL review them to ensure that any impact due to GIT implementation is either mitigated or accepted.

Community Policies and Procedures

  1. How committers are RECOMMENDED To handle branches, including development, feature, official releases, and maintenance branches.
  2. How to handle security@ issues, and what material SHOULD NOT be committed to the repository.
  3. A documented and accepted Release procedure MUST be defined and followed.
  4. It is RECOMMENDED that a clear community contribution process is made available.

Relevant discussions and documents

Disabling svn access 2011/09/23

Approval from ASF to start the Git Experiment 2011/09/29 and continued.

The Release Procedure contains an up to date process for releasing CouchDB from sources maintained in ASF-controlled GIT.

There is a Git Contributor Workflow on the PhoneGap Wiki, which is a great outline on how to use git when you want to contribute patches.

Success Measurement

TODO: Every experiment has variables which are measured to decide about the success of the project.

How has the community changed with git?

GitSuccessCriteria (last edited 2011-11-28 20:31:06 by FilMaj)