Support -i for rebasing stacks.
I ❤️ rebasing, and doing no-edit amends. When I do that in a branch low in the stack, the higher layers end up with "duplicate-ish" commits that conflict. The solution during a normal rebase is to drop that new duplicate. Here's an example
Initial State
branch-a
main -> commitA (111aaa)
branch-b
main -> commitA (111aaa) -> commitB (222bbb)
Change in branch-a and git commit --amend'd
if I go to branch-a and make a change using git commit --amend I'll end up with this:
branch-a
main -> commitA (112aaa)
branch-b
main -> commitA (111aaa) -> commitB (222bbb)
Finally, rebasing branch-b
Then when branch-b gets rebased, it looks like this:
main -> commitA (112aaa) -> commitA (111aaa) -> commitB (222bbb)
Again, the solution is simply to drop commitA (111aaa), as that's the old one.
But I can't do that with gh stack rebase.
Support
-ifor rebasing stacks.I ❤️ rebasing, and doing no-edit amends. When I do that in a branch low in the stack, the higher layers end up with "duplicate-ish" commits that conflict. The solution during a normal rebase is to drop that new duplicate. Here's an example
Initial State
branch-a
main -> commitA (111aaa)branch-b
main -> commitA (111aaa) -> commitB (222bbb)Change in
branch-aandgit commit --amend'dif I go to
branch-aand make a change usinggit commit --amendI'll end up with this:branch-a
main -> commitA (112aaa)branch-b
main -> commitA (111aaa) -> commitB (222bbb)Finally, rebasing
branch-bThen when
branch-bgets rebased, it looks like this:main -> commitA (112aaa) -> commitA (111aaa) -> commitB (222bbb)Again, the solution is simply to
dropcommitA (111aaa), as that's the old one.But I can't do that with
gh stack rebase.