Submits chains of CLs to Gerrit
#usage: fx split_cl [-h] [--dry_run] [--repo REPO] --cl CL --patch N
Split a single CL into multiple CLs and upload each of those CLs to Gerrit.
This command should be run from the directory containing your Git checkout.
For example, if you've created a single large CL with Gerrit CL number 1234
and the most recent patchset number is 4, you can split that into multiple
CLs with the following command:
fx split_cl --cl=12345 --patch=4
This script will:
1. Download the specified patchset to your local Git checkout.
2. Determine the set of files changed by that patchset, then open your
$EDITOR with a configuration file that allows you to specify how the
patchset should be split into multiple CLs. Comments at the top of
the configuration file explain how this is done. When you are satisfied,
save the file and close your $EDITOR.
3. Create a local Git branch for each CL specified in the prior step.
4. Upload each Git branch to gerrit. The uploaded CLs will use the same
commit message as the original CL, except the first line will be
prefixed by one or more tags (such as "[fidl]") which are automatically
determined based on the set of changed files. All CLs will be tagged
with the same gerrit topic.
5. Finally, after all CLs are uploaded, the script will checkout JIRI_HEAD.
optional arguments:
-h, --help show this help message and exit
--dry_run If true, print commands that would run but don't execute any of them.
--repo REPO Gerrit repo to connect to. Defaults to https://fuchsia-review.googlesource.com/fuchsia