Merge all (n)lets you fire-and-forget merging your stack; when you click the button, Graphite will merge each of your PRs one-by-one, automatically:
Mergebutton you'll see
Merge all (n), where "n" is the number of PRs below the current PR in the stack plus the current PR.
Merge all (n)adds a comment to the affected PRs in GitHub.
mmerge conflicts, there will only be
mtotal rebases (and additional CI runs) kicked off by the merge process.
Merge all (n)will take
nminutes, but if there are merge conflicts, job time is a byproduct of the time it takes to run GitHub checks on a PR and how many PRs encounter merge conflicts.
gt repo syncwill pull down the latest changes and rebase PR C for you, cutting out the problematic commmits; a subsequent re-submit will then eliminate the detected merge conflict for PR C.
Merge all (n)is designed to similarly automatically resolve this flavor of merge conflict without the need for manual intervention of monitoring. When a merge conflict is found, the merge cron performs a shallow clone of the repo, containing just the stack commits and the trunk commit and utilizes Graphite's knowledge of the stack to perform the same set of operations.