我有一个使用 authz 来控制访问的 svn 存储库。结构如下所示:
├── branches
│ └── bob
├── tags
└── trunk
└── A
├── B
│ └── README.txt
└── README.txt
假设 authz 授予用户对目录的读取权限A
但没有授予B
,并且当我尝试分支时它失败A
:
[hidden]$ svn copy A ^/branches/bob/A1 -m 'Branching A to branches/bob/A1'
Adding copy of A
svn: E220001: Commit failed (details follow):
svn: E220001: Access denied
svnserve 的日志说
Authorization Failed recursive read /trunk/A
为什么 svn 有这个限制,有没有办法解决?为什么它B
在分支时不忽略,就像做结帐一样?
如果事实证明这是不可能的,那么 svn 与 authz 的最佳工作流程是什么?看起来如果不允许分支,唯一的办法就是每个人都在主干上工作,但这太愚蠢了。