推送到NFS共享上的Git存储库失败

问题描述:

我们目前在本地磁盘上有我们的Git存储库。它们由组共享并通过SSH(使用git-shell)访问。推送到NFS共享上的Git存储库失败

由于存在空间问题,我们现在要将存储库移动到NAS上的NFS共享中。我一直在试验这个,并且遇到了一个奇怪的问题。具有完全相同的权限的新鲜(裸露)库可以被克隆罚款,但推动改变(触摸富& & git的加富& & git的承诺& &混帐推起源主)失败,出现错误“无法设置裁判/头/主“和”不写“。

现在,如果我在本地磁盘上重复此方案,refs/heads/master将由任何用户推送拥有。相反,在NFS共享上,如果我将其所有者更改为尝试推送的用户,则不会引发错误。但是,在这两种情况下,用户都是拥有整个存储库并具有组写入权限的组的成员。另外,如果我只是使用SSH作为该组成员的用户登录,则可以在NFS共享和本地磁盘上触及refs/heads/master(如所期望的那样)。

因此,我在这里不知所措。我不知道为什么不同的文件所有者会导致推送失败,看到组权限允许用户覆盖refs/heads/master。而且,即使在该文件上有一个chmod 777,推送也会失败,除非我更改文件。

如果任何人都可以对这种奇怪的事情有所了解,我将非常感激。提前致谢!

啊,喂。 NAS正在做许多奇怪的事情,在所有目录上设置粘性位。这解释了这种行为。一个额外的chmod解决了这个问题。

+0

修正问题的附加chmod究竟是什么? – 2012-01-04 21:42:10