SVN服务器如何创建多个文件夹满足不同的客户端访问呢

是在服务器端还是在客户端建立各种文件夹呢?所建立的文件夹是否是svnadmin创建的版本库呢?是在所创建的每个版本库(资料库)文件夹中权限还是在根目录下统一权限配置?不过根目录若为版本库则子目录无法再创建版本库了。没明白所说的如trunk...等文件夹是客户端自己定义的还是服务器端管理员给创建的,而且权限分配是否在同一文件中,还是在各个版本库的文件中添加。请大神不吝赐教.

你的概念有些混淆。你需要理解几个概念:
1、版本库:这个比较好理解,就是svnadmin创建出来的,存放在服务器端,可以从客户端checkout出来。
2、父版本库:这个是服务器端存放各版本库的父文件夹,客户端不能checkout这一层,但如果是集成了apache的话,可以用浏览器查看这一层,能看到所有的版本库列表。
3、文件夹:这个是版本库内的子文件夹,是由客户端创建后,add、commit到服务器端。顺便提一下,可以直接checkout某个文件夹。

权限文件有多种方式,如果是集成了apache,而且在httpd.conf 中关于SVN是指向父版本库的话,一般是同一个父版本库下的所有库的权限都在同一个文件中进行规定,如果在httpd.conf 中关于SVN是指向版本库的话,则权限文件只规定这个版本库的访问权限。

trunk、brances、tags这层文件夹,一般是放在版本库根目录下面,是由客户端创建并commit到服务器上。追问

父版本库就是包含svnadmin创建的版本库的上级目录是吗?若是这样,将在父版本库目录下用svnadmin创建A、B两个版本库,然后分别在A、B中设置访问权限那么就可以实现A只能访问到A的版本库,B只能访问到B的版本库,C可以通过输入地址/A和地址/B都可以访问到。(权限配置好情况下),上述逻辑是这么回事么 ?先谢谢你

追答

是的,你可以在同一个权限文件中,对父版本库下的多个版本库进行权限定义,就像下面的写法:
[/]
* = r
[prj001:/]
* =
usera =rw
userc=rw
[prj002:/]
* =
userb =rw
userc=rw

追问

[/]这是代表父版本库吗?[prj001:/] prj001是父版本库的子目录吗,比如父版本库文件夹file1应该不是svnadmin创建的,prj002是file1的子目录,是svnadmin创建的,理解的对吗?

追答

[/]是代表父版本库
[prj001:/]是父版本库下的一个独立版本库,其在服务器端的表现形式,正是父版本库对应文件夹下,用svnadmin创建的子文件夹

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答