Sylvain Beucler wrote:
> I haven't setup an auto-packing commit hook so may need to have me do
> that. I'm planning to add something like in post-update:
> 
>   export GIT_DIR=coreutils.git
>   git-count-objects
>   # If > 5120k
>   git repack
>   git prune

A useful reference for update scripts is the update-hook-example.txt
example shipped with git.  Mostly it covers access control.  In
Debian's git-doc package this is normally installed in
/usr/share/doc/git-doc/howto/update-hook-example.txt.  There is a lot
of room for policy differences but that implements a nice access
policy.

Something that Carl set up for us is a cron task that does a full
repack (e.g. git-repack -q -a -d) periodically.  Also along with that
the cron task also touches up permissions to add extra protection to
the tags directory.  Here are some ideas.

  find $repodir/refs/tags -type d ! -perm -=t -print0 | xargs -r0 chmod +t
  find $repodir/refs/tags -type f ! -perm +a=w -print0 | xargs -r0 chmod a-w
  find $repodir/objects -type d ! -perm -=t -print0 | xargs -r0 chmod +t
  find $repodir/objects -type f ! -perm +a=w -print0 | xargs -r0 chmod a-w

Bob


Reply via email to