On Wednesday, August 14, 2013 10:49:58 am Antoine Pelisse
> On Wed, Aug 14, 2013 at 6:27 PM, Stefan Beller
> <stefanbel...@googlemail.com> wrote:
> > builtin/repack.c | 410
> > +++++++++++++++++++++++++++++++++++++++++
> > contrib/examples/git-repack.sh | 194
> > +++++++++++++++++++ git-repack.sh |
> > 194 -------------------
> I'm still not sure I understand the trade-off here.
> Most of what git-repack does is compute some file paths,
> (re)move those files and call git-pack-objects, and
> potentially git-prune-packed and git-update-server-info.
> Maybe I'm wrong, but I have the feeling that the correct
> tool for that is Shell, rather than C (and I think the
> code looks less intuitive in C for that matter).
> I'm not sure anyone would run that command a thousand
> times a second, so I'm not sure it would make a
> real-life performance difference.
I have been holding off a bit on expressing this opinion too
because I don't want to squash someone's energy to improve
things, and because I am not yet a git dev, but since it was
brought up anyway...
I can say that as a user, having git-repack as a shell
script has been very valuable. For example: we have
modified it for our internal use to no longer ever overwrite
new packfiles with the same name as the current packfile.
This modification was relatively easy to do and see in shell
script. If this were C code I can't imagine having
personally: 1) identified that there was an issue with the
original git-repack (it temporarily makes objects
unavailable) 2) made a simple custom fix to that policy.
The script really is mostly a policy script, and with the
discussions happening in other threads about how to improve
git gc, I think it is helpful to potentially be able to
quickly modify the policies in this script, it makes it
easier to prototype things. Shell portability issues aside,
this script is not a low level type of tool that I feel will
benefit from being in C, I feel it will in fact be worse off
The Qualcomm Innovation Center, Inc. is a member of Code
Aurora Forum, hosted by The Linux Foundation
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html