Skip to content

restack: optional conflict resolution #116

Open

Description

@abhinav

Right now, when we restack, users must resolve all conflicts at restack time.
This is a good default, but it's not always convenient.

An improvement here can be made for multi-branch workflows:
if there's a conflict, present the user an option to pick whether they want to
resolve the conflict now or later.
If they pick now, we let them fix it and run gs rebase continue.
Otherwise, we skip that branch and its upstack from the restack operation,
and print a list of branches that were skipped for them to fix manually later.

Activity

  1. s-cork commented on Aug 7, 2025

    @s-cork

    This would be very handy, especially with the gs repo restack command

    something like gs rr --skip-conflicts

    I've come from graphite where this is the default
    they simply log the stacks that were not able to be rebased without conflicts

    I have a bunch of stale stacks that i don't plan on working on anytime soon, and that just means i'll never be able to run gs rr

    I personally would vote this being the default
    with an option to resolve conflicts (--resolve-conflicts)
    if --resolove-conflicts is true, we first restack all stacks that can be restacked without conflicts
    and then start the conflict resolving.

  2. mvanhorn commented on Jun 9, 2026

    @mvanhorn
    Contributor

    Implemented this in #1235.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions