author | Jeff King <peff@peff.net> | |
Mon, 5 Jul 2010 12:39:23 +0000 (08:39 -0400) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Mon, 5 Jul 2010 19:15:11 +0000 (12:15 -0700) | ||
commit | a2ffa6b9615774332299997e45cffa9cab59cb75 | |
tree | 7a7858465b92bb7841794a6c7b2f6cf413b38e0c | tree | snapshot |
parent | 79801fddc85cc899d26afe45984c8e0f1349cd8f | commit | diff |
Why is "git tag --contains" so slow?
On Mon, Jul 05, 2010 at 08:27:23AM -0400, Jeff King wrote:
> As you probably guessed from the specificity of the number, I wrote a
> short program to actually traverse and find the worst skew. It takes
> about 5 seconds to run (unsurprisingly, since it is doing the same full
> traversal that we end up doing in the above numbers). So we could
> "autoskew" by setting up the configuration on clone, and then
> periodically updating it as part of "git gc".
This patch doesn't implement auto-detection of skew, but is the program
I used to calculate, and would provide the basis for such
auto-detection. It would be interesting to see average skew numbers for
popular repositories. You can run it as "git skew --all".
Signed-off-by: Junio C Hamano <gitster@pobox.com>
On Mon, Jul 05, 2010 at 08:27:23AM -0400, Jeff King wrote:
> As you probably guessed from the specificity of the number, I wrote a
> short program to actually traverse and find the worst skew. It takes
> about 5 seconds to run (unsurprisingly, since it is doing the same full
> traversal that we end up doing in the above numbers). So we could
> "autoskew" by setting up the configuration on clone, and then
> periodically updating it as part of "git gc".
This patch doesn't implement auto-detection of skew, but is the program
I used to calculate, and would provide the basis for such
auto-detection. It would be interesting to see average skew numbers for
popular repositories. You can run it as "git skew --all".
Signed-off-by: Junio C Hamano <gitster@pobox.com>
.gitignore | diff | blob | history | |
Makefile | diff | blob | history | |
builtin.h | diff | blob | history | |
builtin/skew.c | [new file with mode: 0644] | blob |
git.c | diff | blob | history | |
t/README | diff | blob | history |