Hi,

changing the default umask on the entire server is not necessary to fix this problem.  Git already has support for exactly this use case---it will set the file permissions correctly, we just need to specify that this is a shared repository.
The command to run is:

git config core.sharedRepository true

(I missed the "core" in my previous e-mail, and I just noticed that my correction went only to Austin).

-Iavor

      core.sharedRepository

           When group (or true), the repository is made shareable between
           several users in a group (making sure all the files and objects are
           group-writable).

           When all (or world or everybody), the repository
           will be readable by all users, additionally to being
           group-shareable.

           When umask (or false), git will use permissions
           reported by umask(2).

           When 0xxx, where 0xxx is an octal number,
           files in the repository will have this mode value.  0xxx will
           override user’s umask value (whereas the other options will only
           override requested parts of the user’s umask value).

           Examples: 0660
           will make the repo read/write-able for the owner and group, but
           inaccessible to others (equivalent to group unless umask is e.g.
           0022).  0640 is a repository that is group-readable but not
           group-writable. See git-init(1). False by default.




On Mon, Jul 22, 2013 at 3:11 PM, Ian Lynagh <ian@well-typed.com> wrote:
On Mon, Jul 22, 2013 at 10:56:45AM +0100, Simon Marlow wrote:
>
> I vaguely recall that we used to do this with a post-commit hook to
> do a 'chmod g+w -R' on the tree.

I've now set the default umask on the new server to be 002, and I've
chmod'ed the current trees, so I think it will be OK now.


Thanks
Ian
--
Ian Lynagh, Haskell Consultant
Well-Typed LLP, http://www.well-typed.com/

_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://www.haskell.org/mailman/listinfo/ghc-devs