WARNING:
The following tips are for those few who have the ability to accept changes into gerrit’s official CM repositories and/or who are able to bypass gerrit entirely. They are posted for convenience for these maintainers only, in case anyone forgets the steps :)
Note: Required Gerrit Permissions
To mass-submit to Gerrit, you will need the “Push” and “Create Reference” permissions. For mass pushes that include commits you didn’t create yourself, you may also need “Forge Author” and “Forge Committer” permissions. If you believe you are lacking appropriate permissions, contact a Gerrit admin (currently arcee, cyanogen, or ciwrl) for assistance.
Bypass Gerrit
Say you have a bunch of changes and want to skip gerrit’s interface entirely, pushing directly to the repository. For this you will need special privileges.
This is a summary of the user-upload feature, described in detail here.
To bypass Gerrit:
-
repo sync
- branch the repository to anything.
- In the new branch, add your commits (or merge from another branch,
git pull
from AOSP, or whatever gets your changes in). - Next, enter
cmremote
. This command will add the remote (usegit remote -v
to see it). - To bypass gerrit, type
git push cmremote HEAD:refs/heads/cm-13.0
(assuming cm-13.0 is the branch to which you are pushing).
To mass-push commits to Gerrit for review
- Repeat steps 1-4 above.
- Then, to mass-push TO Gerrit, use
refs/for/branch
instead ofrefs/heads/branch
.
To create a new remote branch (on github)
- Repeat steps 1-4 above.
- Then, to create a new (remote) branch, type
git push -u cmremote HEAD:refs/heads/new-branch-name
.
Content of this page is based on informations from wiki.cyanogenmod.org, under CC BY-SA 3.0 licence.