managing permissions between windows and mac git commiters
The story goes like this...
My team has a git repo on a windows fileserver. A windows guy sets the repo up and begins committing. I, a mac guy, clone to my filesystem, makes some commits, then push back (actually i go to the repo and pull my changes in). The problem is now I own permissions to the files in the repo, and even though I have read/write permissions for everyone in the folder I cloned the repo into, the repo somehow takes on additional permissions restrictions on the windows os and my coworkers cannot commit.
The scenario can play out the other way too. I set up the repo and a windows guy screws up the permissions.
So how are you guys ensuring that permissions are consistent be开发者_运维问答tween different development environments?
Maybe you could try the config core.sharedRepository
:
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 byumask
(2).- When
0xxx
, where0xxx
is an octal number, files in the repository will have this mode value.0xxx
will override user’sumask
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 unlessumask
is e.g.0022
).
0640
is a repository that is group-readable but not group-writable. See git-init(1).False by default.
精彩评论