|
|
= Committer Policy =
|
|
|
|
|
|
[[TOC]]
|
|
|
|
|
|
This policy was provisionally accepted by the network team on 7 November 2019, by voting and agreement in our team meeting. It became non-provisional on 7 February 2020.
|
|
|
|
|
|
For information on:
|
|
|
* '''when and what''' to merge, see the [[org/teams/NetworkTeam/MergePolicy|MergePolicy]] document.
|
|
|
* '''how''' to merge, see the [[org/teams/NetworkTeam/MergeProcess|MergeProcess]] document.
|
|
|
|
|
|
== Scope ==
|
|
|
|
|
|
This policy gives Network Team staff the commit bit. Staff should
|
|
|
get the commit bit if they are regularly doing Network Team roles
|
|
|
that need it. Or if they want to start doing those roles.
|
|
|
|
|
|
This policy is designed for the git.torproject.org/tor.git repository,
|
|
|
but a similar "get permissions if needed" policy should also apply to:
|
|
|
* other Network Team repositories on git.torproject.org,
|
|
|
* permissions needed on other platforms, like GitHub or GitLab.
|
|
|
|
|
|
== Rationale ==
|
|
|
|
|
|
There are two network team roles that automatically get the commit bit.
|
|
|
The people who are currently in those roles are:
|
|
|
* mainline merger: asn, dgoulet, nickm
|
|
|
* backport merger: teor, nickm
|
|
|
|
|
|
When one or two of these people are away, the merge load significantly
|
|
|
increases. Or there may be a large backlog when they return to work.
|
|
|
|
|
|
This policy allows people to get used to the merge process. As they
|
|
|
gain experience, they can take over more of the merge workload.
|
|
|
|
|
|
This policy also makes the following roles and processes faster:
|
|
|
|
|
|
CI fixer:
|
|
|
* merge CI fixes
|
|
|
|
|
|
Coder:
|
|
|
* merge patches that don't need review
|
|
|
|
|
|
Reviewer:
|
|
|
* merge patches, unless they need a second reviewer
|
|
|
|
|
|
For details see:
|
|
|
|
|
|
Merge Policy:
|
|
|
* https://trac.torproject.org/projects/tor/wiki/org/teams/NetworkTeam/MergePolicy
|
|
|
|
|
|
== Process ==
|
|
|
|
|
|
=== 0. Learn How We Merge ===
|
|
|
|
|
|
If you want to do master merges, read the Merge Policy
|
|
|
and Merge Process:
|
|
|
* https://trac.torproject.org/projects/tor/wiki/org/teams/NetworkTeam/MergePolicy
|
|
|
* https://trac.torproject.org/projects/tor/wiki/org/teams/NetworkTeam/MergeProcess
|
|
|
|
|
|
If you want to do backport merges, also read the Backport Process:
|
|
|
* https://trac.torproject.org/projects/tor/wiki/org/teams/NetworkTeam/Backports
|
|
|
|
|
|
=== 1. Set Up Your Git Upstream Environment ===
|
|
|
|
|
|
Follow the latest Merge Policy setup instructions at:
|
|
|
* https://trac.torproject.org/projects/tor/wiki/org/teams/NetworkTeam/MergeProcess#ConfiguringyourEnvironment
|
|
|
|
|
|
=== 2. Check If You Already Have Access ===
|
|
|
|
|
|
Make sure you have an LDAP account with working SSH keys:
|
|
|
* https://db.torproject.org/doc-mail.html
|
|
|
|
|
|
Run the command:
|
|
|
{{{
|
|
|
$ ssh git@git-rw.torproject.org | grep W
|
|
|
}}}
|
|
|
|
|
|
=== 3. Get Access ===
|
|
|
|
|
|
A current merger gets you access, using the git.torproject.org process at:
|
|
|
* https://trac.torproject.org/projects/tor/wiki/org/operations/services/git.torproject.org#Addingdeveloperstoarepository
|
|
|
|
|
|
=== 4. First Time ===
|
|
|
|
|
|
The first time you do a master merge, ask another merger to check
|
|
|
your work before you push to upstream.
|
|
|
|
|
|
The first time you do a backport merge, ask a backport merger to
|
|
|
check your work before you push to upstream.
|
|
|
|
|
|
=== 5. Removing Access ===
|
|
|
|
|
|
Anyone may request to drop the commit bit. They do not need to
|
|
|
provide any reasons.
|
|
|
|
|
|
Anyone who is not regularly using the commit bit should ask for it
|
|
|
to be removed.
|
|
|
|
|
|
We should review the list of people who have the commit bit every
|
|
|
6 months, and remove people who are not using it.
|
|
|
|
|
|
When a staff member leaves the network team, we will remove their
|
|
|
commit bit, unless they still need to use it regularly.
|
|
|
|
|
|
=== 6. Who Can Use This New Process? ===
|
|
|
|
|
|
Network Team staff members who are regularly doing the CI, Coder, or
|
|
|
Reviewer roles can get the commit bit using this process.
|
|
|
|
|
|
Anyone with the commit bit can have it removed using this process.
|
|
|
|
|
|
New Network Team staff members should learn our processes for
|
|
|
at least 12 months, before getting the commit bit. |
|
|
\ No newline at end of file |