On Mon, 28 May 2018, Sitaram Chamarty wrote: > On Mon, May 28, 2018 at 09:27:18AM -0400, Robert P. J. Day wrote: > > [snipped the rest because I really don't know] > > > more to the point, is that actually what the "update" hook does? i > > just looked at the shipped sample, "update.sample", and it seems to be > > related to tags: > > > > #!/bin/sh > > # > > # An example hook script to block unannotated tags from entering. > > no that's just a sample. An update hook can do pretty much > anything, and if it exits with 0 status code, the actual update > succeeds. If it exists with any non-zero exit code, the update will > fail. > > This is (usually) the basis for a lot of checks that people may > want, from commit message format to access control at the ref > (branch/tag) level for write operations. i'm not convinced that that reference is "just a sample." the comment in builtin/init-db.c reads: /* Note: if ".git/hooks" file exists in the repository being * re-initialized, /etc/core-git/templates/hooks/update would * cause "git init" to fail here... the reference to "/etc/core-git/templates/hooks/update" might lead some people to believe that that somehow refers to the "update.sample" hook that comes with a new repo, but that hook is specifically related to git-receive-pack, and has nothing to do with re-initalizing a repo, AFAICT. i'm just suggesting that that comment in buildin/init-db.c seems more than a little inaccurate. rday -- ======================================================================== Robert P. J. Day Ottawa, Ontario, CANADA http://crashcourse.ca/dokuwiki Twitter: http://twitter.com/rpjday LinkedIn: http://ca.linkedin.com/in/rpjday ========================================================================