Git不断删除组写权限

时间:2013-02-15 18:46:41

标签: linux git file-permissions

我有一个git存储库,我与几个开发人员共享。我们经常做git pulls并推动它。不幸的是,每次我执行git pull时,更改的文件都会丢失组写入权限。我如何阻止git这样做?

我在Ubuntu 12.04 LTS上运行它。

共享仓库上的配置如下所示:

[core]
        repositoryformatversion = 0
        filemode = true
        bare = true
        sharedRepository = group

我还在其上运行了以下命令以尝试修复它

find repo.git -type d -exec chmod g+rws {} +
sudo chmod -R g+rw repo.git/objects

无论我最终得到755的文件夹和带有644的文件,当我分别想要775和664时。

3 个答案:

答案 0 :(得分:2)

你可以在git钩子上做这样的事情:

#!/bin/sh
#
# .git/hooks/post-merge

sudo chmod -R g+rw *

在每次git pull之后调用它,而文件(.git / hooks / post-merge)必须是可执行的

答案 1 :(得分:1)

您应该使用core.sharedRepository=groupcore.sharedRepository=0664设置。

参见例如http://criticallog.thornet.net/2010/01/07/sharing-your-git-repository/

答案 2 :(得分:0)

有问题的用户还需要将其umask设置为002。