Scroll to navigation

REPO(1) Repo Manual REPO(1)

NAME

repo - repo upload - manual page for repo upload

SYNOPSIS

repo upload [--re --cc] [<project>]...

DESCRIPTION

Summary

Upload changes for code review

OPTIONS

show this help message and exit
number of jobs to run in parallel (default: based on number of CPU cores)
send local branch name to Gerrit Code Review
add hashtags (comma delimited) to the review
add local branch name as a hashtag
add a label when uploading
request reviews from these people
also send email to these email addresses
(local) branch to upload
upload current git branch
upload all git branches
do not send e-mails on upload
upload as a private change (deprecated; use --wip)
upload as a work-in-progress change
mark change as ready (clears work-in-progress setting)
additional push options to transmit
submit for review on this target branch
do everything except actually upload the CL
answer yes to all safe prompts
ignore untracked files in the working copy
always ask about untracked files in the working copy
disable verifying ssl certs (unsafe)

Logging options:

show all output
only show errors

Multi-manifest options:

operate starting at the outermost manifest
do not operate on outer manifests
only operate on this (sub)manifest
operate on this manifest and its submanifests

pre-upload hooks:

Do not run the pre-upload hook.
Run the pre-upload hook without prompting.
Do not abort if pre-upload hooks fail.

Run `repo help upload` to view the detailed manual.

DETAILS

The 'repo upload' command is used to send changes to the Gerrit Code Review system. It searches for topic branches in local projects that have not yet been published for review. If multiple topic branches are found, 'repo upload' opens an editor to allow the user to select which branches to upload.

'repo upload' searches for uploadable changes in all projects listed at the command line. Projects can be specified either by name, or by a relative or absolute path to the project's local directory. If no projects are specified, 'repo upload' will search for uploadable changes in all projects listed in the manifest.

If the --reviewers or --cc options are passed, those emails are added to the respective list of users, and emails are sent to any new users. Users passed as --reviewers must already be registered with the code review system, or the upload will fail.

While most normal Gerrit options have dedicated command line options, direct access to the Gerit options is available via --push-options. This is useful when Gerrit has newer functionality that repo upload doesn't yet support, or doesn't have plans to support. See the Push Options documentation for more details: https://gerrit-review.googlesource.com/Documentation/user-upload.html#push_options

Configuration

review.URL.autoupload:

To disable the "Upload ... (y/N)?" prompt, you can set a per-project or global Git configuration option. If review.URL.autoupload is set to "true" then repo will assume you always answer "y" at the prompt, and will not prompt you further. If it is set to "false" then repo will assume you always answer "n", and will abort.

review.URL.autoreviewer:

To automatically append a user or mailing list to reviews, you can set a per-project or global Git option to do so.

review.URL.autocopy:

To automatically copy a user or mailing list to all uploaded reviews, you can set a per-project or global Git option to do so. Specifically, review.URL.autocopy can be set to a comma separated list of reviewers who you always want copied on all uploads with a non-empty --re argument.

review.URL.username:

Override the username used to connect to Gerrit Code Review. By default the local part of the email address is used.

The URL must match the review URL listed in the manifest XML file, or in the .git/config within the project. For example:

[remote "origin"]
url = git://git.example.com/project.git review = http://review.example.com/
[review "http://review.example.com/"]
autoupload = true autocopy = johndoe@company.com,my-team-alias@company.com

review.URL.uploadtopic:

To add a topic branch whenever uploading a commit, you can set a per-project or global Git option to do so. If review.URL.uploadtopic is set to "true" then repo will assume you always want the equivalent of the -t option to the repo command. If unset or set to "false" then repo will make use of only the command line option.

review.URL.uploadhashtags:

To add hashtags whenever uploading a commit, you can set a per-project or global Git option to do so. The value of review.URL.uploadhashtags will be used as comma delimited hashtags like the --hashtag option.

review.URL.uploadlabels:

To add labels whenever uploading a commit, you can set a per-project or global Git option to do so. The value of review.URL.uploadlabels will be used as comma delimited labels like the --label option.

review.URL.uploadnotify:

Control e-mail notifications when uploading. https://gerrit-review.googlesource.com/Documentation/user-upload.html#notify

review.URL.uploadwarningthreshold:

Repo will warn you if you are attempting to upload a large number of commits in one or more branches. By default, the threshold is five commits. This option allows you to override the warning threshold to a different value.

References

Gerrit Code Review: https://www.gerritcodereview.com/

March 2024 repo upload