git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Get all tips quickly
@ 2014-04-13 14:19 Kirill Likhodedov
  2014-04-13 18:29 ` Ævar Arnfjörð Bjarmason
  2014-04-13 19:20 ` Michael Haggerty
  0 siblings, 2 replies; 4+ messages in thread
From: Kirill Likhodedov @ 2014-04-13 14:19 UTC (permalink / raw)
  To: git; +Cc: Stanislav.Erokhin

Hi, 

What is fastest possible way to get all “tips” (leafs of the Git log graph) in a Git repository with hashes of commits they point to?

We at JetBrains are tuning performance of Git log integration in our IntelliJ IDEA and want to get all tips as fast as possible. 
Currently we use 'git log —branches --tags --remotes --no-walk’, but the problem is that it is slow if there are a lot of references. In our repository we have about 35K tags, and therefore the tags is the main slowdown. On the other hand, we have just a couple of dozens of tips as well as branch references, and `git log --branches --remotes` is very fast.

So we are searching a way to get tags pointing to the graph leafs faster. 

We also tried to read tags by manually parsing .git files (it is faster than invoking git log), but unfortunately annotated tags in .git/refs/tags/ are written without the hashes they point to (unlike .git/packed-refs).

And that’s a pity that `git tag` doesn’t show the hashes.

Thanks a lot for any help!

-----
Kirill Likhodedov
JetBrains
http://www.jetbrains.com
"Develop with pleasure!"

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2014-04-14 14:20 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-04-13 14:19 Get all tips quickly Kirill Likhodedov
2014-04-13 18:29 ` Ævar Arnfjörð Bjarmason
2014-04-13 19:20 ` Michael Haggerty
2014-04-14 14:20   ` Kirill Likhodedov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).