Matthew Stewart-Ronnisch

05/25/2023, 8:03 PM
I’m a little confused on whether I should check the “Rebase each branch before merge” option.
By default, Graphite will only rebase each branch in the stack if necessary to prevent the extraneous merge conflicts that occur when successive branches in a stack change the same file. Not rebasing can make stack merges faster (because Graphite does not need to wait for CI to run again before triggering a merge), but this will result in branches of the stack containing more than just their own diff, even once the merge is complete. This option ensures that each branch only contains its own changes and no downstack changes at merge time.
If I have this option turned off, does this mean reverting an individual branch’s changes is not possible?

Jacob Gold

05/25/2023, 8:34 PM
no, the commit on main will still contain the correct diff — it's just the diff on the PR that is affected
good question!