2011-04-29 169 views
3

我想清楚一些linux权限继承和颠覆。 如果我查看“svn:svn”拥有的内容并提交它,然后在最初签出的目录上运行svn update,则文件将获得我的权限。我是svn团队的成员。我可以从svn组中删除自己,以便在执行更新时强制允许svn:svn保留权限吗? 我正在使用Subversion客户端检出文件,并使用svn作为用户。 谢谢linux权限继承

+0

你是如何使用Subversion的?例如,你运行svnserve还是通过http运行一切?或者,你使用svn + ssh吗? – 2011-04-29 19:25:10

回答

3

您需要在该目录的组权限上设置sticky位。

chmod g+S svndir 

这将强制组权限继承它的后代。

+1

+1:这是正确的,但要注意这是你在本地机器上做的事情,*不是*对存储库有任何影响的东西。每当有人签出模块时,都必须在结账机上完成。 – 2011-04-29 18:59:34

0

Subversion不在存储库中存储文件所有权或权限。如果你检查了一些东西,它就归你所有。我不确定你要完成的是什么,但它将涉及一个脚本来更改本地计算机上的文件所有权。

+0

好的这里是德拉玛我不能缝让我的头。我正在使用GUI(Sycro)来检出并提交回购。我也有一个更新Web服务器的钩子。如果我检出一个文件,修改它并提交,钩子用该文件和正确的(Svn)用户名更新服务器。但是...如果我终端进入网络服务器并进行更新,权限是ME.How我解决了这个问题?如果我以“svn”身份登录到网络服务器,它不会让我更新。告诉我存在权限问题。 – mike628 2011-04-29 21:33:09

1

您可以设置组粘滞位上的父目录,which'll该目录自动分配给在那里创建任何新文件

chmod g+s . 

我不认为它会应用粘到任何子目录,所以你必须复制这个每个子目录,但至少这些文件将出现与适当的组所有权。