Subject: Re: Commit templates are not readable after 'make install'

From: Junio C Hamano <[email-masked]>
Date: Tue, 09 Sep 2008 12:19:03 -0700

"Anatol Pomozov" <[email-masked]> writes:

> I build git from sources and I have one small permissions issue that
> (I think) should be fixed.
>
> So I build it as described in INSTALL file
> make prefix=/usr all
> sudo make prefix=/usr install
>
> Everything goes fine here and we have a new version of git installed
> $ git --version
> git version 1.6.0.1.285.g1070
>
> But when I want to create a new repo, I have a fatal problem
> $ git init
> fatal: cannot copy
> /usr/share/git-core/templates/hooks/applypatch-msg.sample to
> /personal/sources/opensource/1/.git/hooks/applypatch-msg.sample
>
>
> Because of the template files are readable only for root
> $ ls -l /usr/share/git-core/templates/hooks/
> total 44
> -rwxr-x--- 1 root root  452 2008-08-29 11:04 applypatch-msg.sample
> -rwxr-x--- 1 root root  894 2008-08-29 11:04 commit-msg.sample
> -rwxr-x--- 1 root root  160 2008-08-29 11:04 post-commit.sample
> -rwxr-x--- 1 root root  553 2008-08-29 11:04 post-receive.sample

Didn't 9907721 (templates/Makefile: don't depend on local umask setting,
2008-02-28) take care of that?

    ... goes and looks ...

Ah, that is only to propagate the wish of the person who _built_ it.

You probably have a tight umask and have sources checked out unreadable to
others, which is propagated to the installation (check the permission of
files in your templates/blt directory to verify this conjecture).  And the
build procedure is honoring your wish to make things unreadable to others.