Device Maintainers

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:

  1. repo sync
  2. branch the repository to anything.
  3. In the new branch, add your commits (or merge from another branch, git pull from AOSP, or whatever gets your changes in).
  4. Next, enter cmremote. This command will add the remote (use git remote -v to see it).
  5. 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

  1. Repeat steps 1-4 above.
  2. Then, to mass-push TO Gerrit, use refs/for/branch instead of refs/heads/branch.

To create a new remote branch (on github)

  1. Repeat steps 1-4 above.
  2. 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.