All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bagas Sanjaya <bagasdotme@gmail.com>
To: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>, git@vger.kernel.org
Cc: entwicklung@pengutronix.de
Subject: Re: time needed to rebase shortend by using --onto?
Date: Wed, 26 May 2021 18:04:25 +0700	[thread overview]
Message-ID: <a37840c5-1103-6f38-555e-188878f50e36@gmail.com> (raw)
In-Reply-To: <20210526100932.2hw4rbazgvd6mzff@pengutronix.de>

Hi Uwe,

On 26/05/21 17.09, Uwe Kleine-König wrote:
> Hello,
> 
> I have a kernel topic branch containing 4 patches on top of Linux v5.4.
> (I didn't speak to the affected customer, so I cannot easily share the
> patch stack. If need be I can probably anonymize it or ask if I can
> publish the patches.)
> 
> It rebases clean on v5.10:
> 
> 	$ time git rebase v5.10
> 	Performing inexact rename detection: 100% (36806539/36806539), done.
> 	Performing inexact rename detection: 100% (36806539/36806539), done.
> 	Performing inexact rename detection: 100% (36806539/36806539), done.
> 	Performing inexact rename detection: 100% (36806539/36806539), done.
> 	Successfully rebased and updated detached HEAD.
> 
> 	real	3m47.841s
> 	user	1m25.706s
> 	sys	0m11.181s
> 
> If I start with the same rev checked out and explicitly specify the
> merge base, the rebase process is considerably faster:
> 
> 	$ time git rebase --onto v5.10 v5.4
> 	Performing inexact rename detection: 100% (36806539/36806539), done.
> 	Performing inexact rename detection: 100% (36806539/36806539), done.
> 	Performing inexact rename detection: 100% (36806539/36806539), done.
> 	Performing inexact rename detection: 100% (36806539/36806539), done.
> 	Successfully rebased and updated detached HEAD.
> 
> 	real	1m20.588s
> 	user	1m12.645s
> 	sys	0m6.733s
> 
> Is there some relevant complexity in the first invocation I'm not seeing
> that explains it takes more than the double time? I would have expected
> that
> 
> 	git rebase v5.10
> 
> does the same as:
> 
> 	git rebase --onto v5.10 $(git merge-base HEAD v5.10)
> 
> . (FTR:
> 
> 	$ time git merge-base HEAD v5.10
> 	219d54332a09e8d8741c1e1982f5eae56099de85
> 
> 	real	0m0.158s
> 	user	0m0.105s
> 	sys	0m0.052s
> 
> , 219d5433 is v5.4 as expected.
> 
> 	$ git version
> 	git version 2.29.2
> 
> That's from the Debian package 1:2.29.2-1~bpo10+1 on a Debian 10 box.)
> 
> Best regards
> Uwe
> 

Can you reproduce your findings with latest version (v2.32.0-rc1) please?

-- 
An old man doll... just what I always wanted! - Clara

  reply	other threads:[~2021-05-26 11:04 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-26 10:09 time needed to rebase shortend by using --onto? Uwe Kleine-König
2021-05-26 11:04 ` Bagas Sanjaya [this message]
2021-05-26 14:38 ` Elijah Newren
2021-05-27 21:59   ` Uwe Kleine-König
2021-05-27 22:15     ` Uwe Kleine-König
2021-05-28  5:38       ` Elijah Newren
2021-05-27 23:08     ` Elijah Newren
2021-05-28 21:40       ` Uwe Kleine-König
2021-05-28 22:26         ` Elijah Newren
2021-05-29 16:59         ` Felipe Contreras
2021-05-26 22:18 ` Junio C Hamano
2021-05-27 22:16   ` Uwe Kleine-König

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a37840c5-1103-6f38-555e-188878f50e36@gmail.com \
    --to=bagasdotme@gmail.com \
    --cc=entwicklung@pengutronix.de \
    --cc=git@vger.kernel.org \
    --cc=u.kleine-koenig@pengutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.