# The contributor (author) provides a statement regarding the provenance, rights, and license of the code in a comment on the Bugzilla record.

# The contributor (author) provides a statement regarding the provenance, rights, and license of the code in a comment on the Bugzilla record.

#* e.g., "I wrote all this code and have the rights to contribute it to Eclipse under the eclipse.org web site terms of use."

#* e.g., "I wrote all this code and have the rights to contribute it to Eclipse under the eclipse.org web site terms of use."

−

# If required by the IP Due Diligence Process (e.g. if the contribution exceeds 250 lines), the committer creates a CQ (including the URL of the ref) and waits for "check in" permission

+

# If required by the IP Due Diligence Process (e.g. if the contribution exceeds 250 lines), the committer creates a CQ (including the URL of the ref), attaches a patch, and waits for "check in" permission

#* The "Committer" name and email in the Git commit record must be set to the committer's information. The "email" field must be the Eclipse committer ID, or the committer email address as recorded for the committer account at the Eclipse Foundation. See [[Git#Committing_and_pushing|Committing and Pushing]] for more information.

#* The "Committer" name and email in the Git commit record must be set to the committer's information. The "email" field must be the Eclipse committer ID, or the committer email address as recorded for the committer account at the Eclipse Foundation. See [[Git#Committing_and_pushing|Committing and Pushing]] for more information.

Revision as of 10:28, 24 October 2011

Git makes it easy to pull contributions from other repositories and make them part of your own. It feels wrong to do the same thing we do with CVS: attach a patch that is later added to the repository by a committer. The natural thing to do in Git is to pull the contribution in question from the contributor's Git repository. Regardless of the mechanism used to actually get the code into an Eclipse project's Git repository, the Eclipse IP Policy and Due Diligence Process must be followed.

One of the main issues that we need to address is that we need to form a connection between code that has been contributed and a statement of provenance, rights, and licensing. You know, lawyer stuff.

Git does a great job of keeping track of author information, but there is no built in way to keep track of all the other stuff. At some point in the hopefully-not-too-distant-future, we'll be able to use Gerrit for this (see Bug 283749). In the meantime, we have to bridge the old world with the new.

Scenario

An individual has forked one of the eclipse.org projects and has issued a pull request for a commit record that they would like to contribute to the eclipse.org project.

A contributor who is not currently a committer on the project indicates that they've authored some code that they'd like to contribute to the project (this may occur through any number of communication channels).

The developer who authored the code is referred to as the "contributor" or "author"

Eclipse project committer agrees the contribution is something they would like to include in their project.

Contributor (author) or project committer creates a bugzilla that include URL pointers to the refs (commit record) in the source repository.

The contributor (author) provides a statement regarding the provenance, rights, and license of the code in a comment on the Bugzilla record.

e.g., "I wrote all this code and have the rights to contribute it to Eclipse under the eclipse.org web site terms of use."

If required by the IP Due Diligence Process (e.g. if the contribution exceeds 250 lines), the committer creates a CQ (including the URL of the ref), attaches a patch, and waits for "check in" permission

Project committer merges the pull request back into the eclipse.org project git repository.

The "Committer" name and email in the Git commit record must be set to the committer's information. The "email" field must be the Eclipse committer ID, or the committer email address as recorded for the committer account at the Eclipse Foundation. See Committing and Pushing for more information.

Note that the automated IP Log generator has been updated to include contributions made through Git (see bug 327594). If Git contributions have the author field correctly set, there is no need to mark the Bugzilla entry iplog+; in fact, doing so may result in redundant entries in the log.