Re: Git is not scalable with too many refs/*
Heya,
[+shawn, who runs into something similar with Gerrit]
On Thu, Jun 9, 2011 at 05:44, NAKAMURA Takumi <geek4civic@gmail.com> wrote:
Show 29 quoted lines
> Hello, Git. It is my 1st post here.
>
> I have tried tagging each commit as "refs/tags/rXXXXXX" on git-svn
> repo locally. (over 100k refs/tags.)
> Indeed, it made something extremely slower, even with packed-refs and
> pack objects.
> I gave up, then, to push tags to upstream. (it must be terror) :p
>
> I know it might be crazy in the git way, but it would bring me conveniences.
> (eg. git log --oneline --decorate shows me each svn revision)
> I would like to work for Git to live with many tags.
>
> * Issues as far as I have investigated;
>
> - git show --decorate is always slow.
> in decorate.c, every commits are inspected.
> - git rev-tree --quiet --objects $upstream --not --all spends so much time,
> even if it is expected to return with 0.
> As you know, it is used in builtin/fetch.c.
> - git-upload-pack shows "all" refs to me if upstream has too many refs.
>
> I would like to work as below if they were valuable.
>
> - Get rid of inspecting commits in packed-refs on decorate stuff.
> - Implement sort-by-hash packed-refs, (not sort-by-name)
> - Implement more effective pruning --not --all on revision.c.
> - Think about enhancement of protocol to transfer many refs more effectively.
>
> I am happy to consider the issue, thank you.
--
Cheers,
Sverre Rabbelier