electron / electron/build-tools

`e cherry-pick` should support "stacking" the cherry-pick on top of another

Open
#442 0 comments 0 reactions 0 assignees View on GitHub
:sparkles: enhancement
Dominant language
TypeScript
Stars
297
Forks
83
Avg merge
17h 23m
Merged PRs (30d)
15

Description

This is to reduce the amount of churn when backporting a long list of CLs.

Currently the process looks like this:
1. Make 5 backports
2. Wait for builds
3. Merge 1
4. 4 backports are auto-rebased
5. Wait for builds
6. Merge 1
7. 3 backports are auto-rebased
8. Merge 1
9. 2 backports are auto-rebased
10. Merge 1
11. 1 backport is auto-rebased
12. Merge 1

That means we run 5 + 4 + 3 + 2 + 1 CI runs for 5 commits and it gets non-linearly worse the more commits we backport at a time.

I'd like to propose one of the following two syntaxs that result in a single PR being generated at the end

```bash
# 12345 is the PR number to stack the change on top of
e cherry-pick {thing} 22-x-y --stack=12345
```

or

```bash
# Comma separated things to backport will result in a single PR with N commits
e cherry-pick {think1},{thing2},{thing3} 22-x-y
```

The first option is pretty cool but still results in N ci runs (as CI runs once per commit)
The second option is better in terms of CI churn as it runs once (only a single "push")

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.