Git分支默认组权限设置为user而不是group

时间:2012-05-22 23:54:45

标签: linux git permissions

我正在为我的公司开发团队设置GIT回购,我似乎遇到了一个有趣的问题。

通常会出现多个人必须在同一个分支上工作,所以当创建分支并推送到阶段时,其他开发人员将分支拉入其本地存储库并开始处理代码。但是,.git / logs / refs / heads中我们的登台服务器上的分支具有为用户和组设置的权限,用户将分支推送到我们的登台环境。

有没有办法在GIT中更改此默认行为?我们有一个用户组设置,当我们手动更改我们能够推送的分支上的组权限时,我宁愿不让cron作业一直在运行更改权限。

在此处的图片中,您可以看到两个已手动更改权限的repos,以及刚刚推送过的权限。

List of GIT ranches and permissions

1 个答案:

答案 0 :(得分:1)

这是由创建新文件的进程的凭据引起的,它们位于git存储库或工作副本中。如果push是通过SSH,则可以从SSH会话获取可能的凭据,如果推送自定义git协议,则可以通过git服务器进程获取,等等。

除非您是root用户,否则无法更改文件的所有者。但您可以使用the SGID bit on directories强制执行新创建的文件组。