Re: [PATCH 1/4] rebase -i: demonstrate obscure loose object cache bug
- From
Jeff King <peff@peff.net>
- Date
- Mar 14, 2019, 00:07 UTC
- Message-ID
- <20190314000759.GB31968@sigill.intra.peff.net>
- In-Reply-To
- <nycvar.QRO.7.76.6.1903132327500.41@tvgsbejvaqbjf.bet>
On Wed, Mar 13, 2019 at 11:40:54PM +0100, Johannes Schindelin wrote:
Show 10 quoted lines
> > > + shift > > > + test -z "$*" || > > > + echo "exec $0 $*" >>$GIT_REBASE_TODO > > > > And here we do the same thing. That second redirection is unnecessary. > > It is actually not unnecessary, but to the contrary quite necessary to > achieve the intended effect: with this command, we append an `exec` line > to the todo list that is guaranteed to be executed after the `pick` > command that we added earlier.
Ah, right, I was totally misreading it. We are not execing _now_, but rather appending an exec. And that explains my confusion about recursion.
So your nice explanation below has gone to waste, because I have just now understood what is going on. ;)
I agree that what you have here is probably the simplest way of demonstrating the issue.
-Peff