Re: Print Precedes/Follows in git log
- From
- Marco Costalba <mcostalba@gmail.com>
- Date
- Jan 15, 2008, 06:38 UTC
- Message-ID
- <e5bfff550801142238h3746841asb8c37110d49908cb@mail.gmail.com>
- In-Reply-To
- <Pine.LNX.4.64.0801150031480.2315@fbirervta.pbzchgretzou.qr>
On Jan 15, 2008 12:34 AM, Jan Engelhardt <jengelh@computergmbh.de> wrote:
Show 7 quoted lines
> > And it would be really nice if `git log` would also show the > Precedes/Follows lines so one can identify much more easily in > big logs like those of the Linux kernel what the next release to > have a given patch is. > >
You need two complete revisions walk for this, one from the newest to oldset to compute the 'precedes' and one from the oldest to newest to compute the 'follows', so I would say it's more suitable used together with --topo-order option of git log that already does a walk, at least the slowdown is hidden in this case.
Anyhow being able to compute precedes/following info in timely fashion and with low memory consumption is quite not trivial code, I have implemented for qgit long time ago and I remember gave a kook at the gitk code for reference also if at the end my implementation it's a bit different (less memory used but slightly more complicated).
Just to give an idea of timing, on my new and awesome ;-) laptop loading full Linux tree it takes 3316ms, then calculating precedes/follows info (indexing the tree) it takes 233ms.
Perhaps the slowest part is to load refs info, you need this to know what sha a tag/branch has and is a prerequisite to indexing, also if refs are compacted it takes almost 1 second on my PC because there is heavy disk activity in any case.
Marco