如何使用 "ssh + svn" 控制对每个目录的访问

How to control access to each directory using "ssh + svn"

无法使用 "ssh + svn" 控制对每个目录的访问。

除了分库还有别的办法吗?

即使进行了以下设置,“othrt_ssh_user”也可以访问存储库“repos”的目录“/trunk”(svn update and commit)。

svnserve.conf

anon-access = none
auth-access = write
authz-db = authz

authz

[/]
* = rw

[repos:/trunk]
some_ssh_user = rw
othrt_ssh_user =


事实证明,"repository" 实际上是一个单一的存储库。 以下设置工作正常。

[/]
* = rw

[/trunk]
some_ssh_user = rw
othrt_ssh_user =

您的配置完全有效并且必须工作(如果它与服务器的真实状态相关)

检查一下

  1. Repo(s) 确实由 svn+ssh:// 提供服务,而不是普通的 ssh://(examine command of svn-users)
  2. 有问题的回购(单个回购)有名称 "repos" 并且部分 [repos:/trunk] 是适用的(svn ls svn+ssh://URL-OF-ROOT 必须向您显示 回购的公共基础目录 或单个 "repos" 存储库的根)