On Thu, Oct 9, 2008 at 10:41 PM, Samuel Tardieu <sam@xxxxxxxxxxx> wrote: >>>>>> "Ed" == Ed Schofield <edschofield@xxxxxxxxx> writes: > > Ed> I have now run "git --bare init --shared=group" to reinitialize > Ed> the repository. This seems to have changed the directories to be > Ed> g+sx. (Is this all it did?). There are still some objects > Ed> directories with 755 permissions rather than 770, which I presume > Ed> I want, and the group ownership of these is wrong. Shall I change > Ed> these by hand? The sha1 files all have 444 permissions; is this > Ed> right? > > Ed> The last question I have is how to ensure that git creates object > Ed> files etc. with the right permissions when users push in future. > > As Marc said, you should first make sure that "config" contains > "sharedrepository = 1" in the "[core]" section. > > Then you can do the following: > > - remove all permissions for "others": chmod -R o-rwx . > - mirror "user" permissions to "group": chmod -R g=u . > - add +s flag to directories: find . -type d | xargs chmod g+s > > This should fix your current situation. The "sharedrepository = 1" > will tell git to maintain a proper shared state in the future > on objects it creates (i.e. mirror "user" permission to "group" ones). This worked beautifully. Thanks Sam, thanks Marc! -- Ed -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html