From: Johannes Sixt Date: Fri, 20 Apr 2012 16:45:34 GMT Subject: Re: [PATCH] rebase -i: avoid checking out $branch when possible Message-ID: <4F9192AE.5050304@kdbg.org> In-Reply-To: Am 20.04.2012 17:05, schrieb Thomas Rast: > The command > > git rebase [-i] [--onto $onto] $base $branch > > is defined to be equivalent to > > git checkout $branch && git rebase [-i] [--onto $onto] $base > > However, we do not have to actually perform the checkout. The rebase > starts building on top of $base (or $onto, if given). The tree > _state_ (not diff) of $branch is irrelevant. Actually performing the > checkout has some downsides: $branch may potentially be way out of > touch with HEAD, and thus e.g. trigger a full rebuild in a timestamp- > based build system, even if $base..$branch only edits the README. Thanks, this is very much appreciated. I like it (because it would prevent lots of unneeded rebuilds in my use-cases). > cp "$todo" "$todo".backup > git_sequence_editor "$todo" || > - die_abort "Could not execute editor" > + die_abort_with_checkout "Could not execute editor" I don't think that we want to checkout here, even if the docs say we do. -- Hannes