From: Philippe De Muyter Date: Thu, 21 May 2015 07:05:23 GMT Subject: Re: identical hashes on two branches, but holes in git log Message-ID: <20150521070523.GA8026@frolo.macqel> In-Reply-To: <20150520161815.GA12521@peff.net> On Wed, May 20, 2015 at 12:18:15PM -0400, Jeff King wrote: > On Wed, May 20, 2015 at 04:12:38PM +0200, Philippe De Muyter wrote: > > > After reading the man page of 'git log', should --topo-order not be the > > default log order ? > > The problem with --topo-order is that it has to traverse all of the > commits before starting output. So: > > $ time git log | head -1 > commit 64fb1d0e975e92e012802d371e417266d6531676 > > real 0m0.038s > user 0m0.032s > sys 0m0.008s > > $ time git log --topo-order | head -1 > commit 64fb1d0e975e92e012802d371e417266d6531676 > > real 0m4.247s > user 0m4.140s > sys 0m0.108s > > -Peff So we trade correctness for speed :( Is there a way to set topo-order as the default log order via git config ? Is topo-order already implemented as starting with the default order followed by an ancestor check or does it switch immediately to topological sort ? Philippe