From: Joshua Jensen Date: Thu, 28 Oct 2010 03:04:44 GMT Subject: Re: git rebase --abort of an --onto run does not checkout the originating branch Message-ID: <4CC8E84C.3030709@workspacewhiz.com> In-Reply-To: <7vlj5qkpjc.fsf@alter.siamese.dyndns.org> ----- Original Message ----- From: Junio C Hamano Date: 10/22/2010 1:15 PM > Joshua Jensen writes: > >> git rebase --onto mybranch START_SHA END_SHA >> >> In the middle, I decide to run 'git rebase --abort'. >> >> Just as the documentation states, it performs a checkout of END_SHA as >> the restored branch. END_SHA has nothing to do with the originating >> branch, and confusion ensues. >> >> Is there a reason why 'git rebase' should not store off the >> originating branch and use that for an --abort, instead of >> which is END_SHA? > When END_SHA is an actual branch name (which by the way is almost always > how I use --onto in my attempts to transplant my topics), and when I found > out that the conflicts I see while rebasing the topic to a different > starting point (i.e. --onto) is too much to handle for too little gain, I > would not appreciate if --abort took me to the --onto branch, which is > totally uninteresting for the purpose of what I was attempting to do, > namely, to deal with the topic. > > If the command took me back to the tip of the topic that I failed to > rebase, I can continue attempting to whip it in shape using different > strategies from there (e.g. merging an older part of upstream into the > topic before merging the topic back to the upstream). As if turns out, I wasn't expecting --abort to take me to the --onto branch but rather, the originating branch. Let's assume I am working in a branch called JBranch. I run: git rebase --onto master START_SHA END_SHA I decide to abort the rebase. I expect to be returned to the place I started from: JBranch. After all, I am aborting the rebase. I don't want to proceed. I decided it was the wrong thing to do, so just put me back where I was. Anyway, that was my thought pattern. Since that isn't how it works, I'll just have to remember where I was when I started the rebase, perform the abort, and checkout the originating branch. Thank you for your time. Josh