总结权限的规则:
1.子目录权限完全覆盖父目录权限。以子目录的权限为最终。仓库本身就是祖宗,所有的子目录继承他的权限,所有仓库本身必须增加可访问权限,要么everyone ,要么增加全部团队成员。
2.针对一个目录的权限的设置(不论是子目录还是父目录)。如果增加了一个组group007(包含WuDong成功),然后再增加WuDong本人,
那么由于组里的成员与成员个体存在交叉,这时取最大权限。
举例:group007读写,WuDong本人只读或noAccess,那么最终的结果是WuDong对此目录具有【读写】权限!。
3.仓库本身,不要设置成No Access,如本例中的hello01,你若把仓库本身设置为不可访问,那么就彻底登录不上,SVN彻底失效,当你对仓库本身什么都不设置的
时候他默认就是No Access 可以参考第2篇。为了安全可以这么设置:
仓库本身 去除默认的Every One,避免别人可以访问。把全部团队成员都加载进来,然后设置为只读权限,这样全部成员可访问,然后再针对内部子文件夹 设置成员的权限。
这个会单独出来一篇博客来测试。
4.分模块开发,尽量避免存在同一个人,负责多个项目的情况。一个人 负责开发自己的代码 不要多个人负责一个项目。即不要创建组group,以免出现权限交叉的情况,省得麻烦出错。
最终的完美结果如下图:
然后针对,不同的子目录增加不同的成员权限。
=================================================================================================================================
1.网上说 VisualSVN 是“允许优先”,即多个权限覆盖的时候,取最大权限;举例:hello库 设置为读写,hello库里面的文件夹src 设置为只读,按照一般的常理,子类会覆盖父类的设置,即子类的设置为主;
但VisualSVN 不是这么干的,它是取多个设置覆盖出来的最大权限,即src文件夹 外层父类为读写,内层本身为只读,覆盖出来的最大权限就是 读写。以下是测试:
无法写入,到这里疑惑了,怎么与网上说的不一致。难道他是“拒绝优先”,先不管了,我让把src修改为读写 再测试。
避开其它问题的原因导致无法上传的问题。
发现可以了!好的,那么再反过来测试他是否是“拒绝优先”,就是所有设置权限中有拒绝的 就不通过。
那么估计就是我认为猜测的那样了,即针对一个人 对 一个文件夹的最终权限是这么得来的,文件夹上右键的设置 > 父目录的继承。
若右键设置权限的时候,有增加个人 又有增加权限组,而这个权限组里又包含这个人,那么是:对这个人的设置 > 权限组的设置。
开始验证:
为了不直接测试库,而是测试文件夹里的文件夹,这次这样搞:
总结,放到最上方。
以下是网上的总结,与我最终 答案谋和。