Re: [PATCH 02/11] Introduce a performance test for git-rebase
- From
Thomas Rast <trast@inf.ethz.ch>
- Date
- Mar 12, 2012, 20:20 UTC
- Message-ID
- <87obs1po5a.fsf@thomas.inf.ethz.ch>
- In-Reply-To
- <7v399dsiw2.fsf@alter.siamese.dyndns.org>
Junio C Hamano <gitster@pobox.com> writes:
Show 9 quoted lines
> Thomas Rast <trast@inf.ethz.ch> writes: > >> However, it's pretty obvious that 'rebase -f' is slow compared to >> 'rebase -m'. So slow in fact that the user would be better off running >> an *interactive* rebase. > > The mention of "-f" got me off track, but does "-m" avoid creating > new commits when it does not have to? A side effect "-f" has is to > replay _all_ the commits, if I recall correctly.
Sorry, my bad. *All* tests use -f for exactly that reason.
Show 14 quoted lines
>> Now I'm not really keen on hacking on git-am until it gets back its >> performance, as for most uses it's probably still fast enough. But I >> think one important question is: can we get rid of the >> git-format-patch|git-am mode of git-rebase, which has historically been >> a source of pain (see, e.g., the aforementioned 43c2325)? > > In the longer term, the right way forward is to try doing less in > the patch mode in rebase. For example, the command could make the > list of commits to be replayed exactly the same way as it does for > flattening cherry-pick rebase, and instead of running "am", run > "format-patch --stdout | apply --3way --whitespace=fix --index" and > commit the result using "commit -C". That way it can depend on > "commit -C" and does not have to worry about stupid things like > 43c2325.
Ah, but that's a trap, or do you have an apply --3way series sitting somewhere ;-)
--
Thomas Rast
trast@{inf,student}.ethz.ch