table of contents
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¶
- -h, --help
- show this help message and exit
- -j JOBS, --jobs=JOBS
- number of jobs to run in parallel (default: based on number of CPU cores)
- -t
- send local branch name to Gerrit Code Review
- --hashtag=HASHTAGS, --ht=HASHTAGS
- add hashtags (comma delimited) to the review
- --hashtag-branch, --htb
- add local branch name as a hashtag
- -l LABELS, --label=LABELS
- add a label when uploading
- --re=REVIEWERS, --reviewers=REVIEWERS
- request reviews from these people
- --cc=CC
- also send email to these email addresses
- --br=BRANCH, --branch=BRANCH
- (local) branch to upload
- -c, --current-branch
- upload current git branch
- --no-current-branch
- upload all git branches
- --ne, --no-emails
- do not send e-mails on upload
- -p, --private
- upload as a private change (deprecated; use --wip)
- -w, --wip
- upload as a work-in-progress change
- -r, --ready
- mark change as ready (clears work-in-progress setting)
- -o PUSH_OPTIONS, --push-option=PUSH_OPTIONS
- additional push options to transmit
- -D BRANCH, --destination=BRANCH, --dest=BRANCH
- submit for review on this target branch
- -n, --dry-run
- do everything except actually upload the CL
- -y, --yes
- answer yes to all safe prompts
- --ignore-untracked-files
- ignore untracked files in the working copy
- --no-ignore-untracked-files
- always ask about untracked files in the working copy
- --no-cert-checks
- disable verifying ssl certs (unsafe)
Logging options:¶
- -v, --verbose
- show all output
- -q, --quiet
- only show errors
Multi-manifest options:¶
- --outer-manifest
- operate starting at the outermost manifest
- --no-outer-manifest
- do not operate on outer manifests
- --this-manifest-only
- only operate on this (sub)manifest
- --no-this-manifest-only, --all-manifests
- operate on this manifest and its submanifests
pre-upload hooks:¶
- --no-verify
- Do not run the pre-upload hook.
- --verify
- Run the pre-upload hook without prompting.
- --ignore-hooks
- 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 |