用xshell登陆服务器,cd切换到服务器中svn的项目仓库目录中,然后切换到conf文件中(也可使用xftp),会看到3个文件,分别是
authz、passwd、svnserve.conf
首先编辑svnserve.conf主配置文件,主要是对以下几项修改
如果后面大家要用到组权限的话,大家看authz-db = authz 前面应该会有 # 号键,记得去掉,这样才能在下面分配组权限的时候,才能起作用。
建立svn用户以及密码:
配置组:
配置各个组权限:
保存修改后的svnserve.conf ,passwd,authz 三个文件
然后用下面的命令重启一下svn
查看svn进程:ps -ef | grep svn 或者 ps aux | grep svn
强制杀死进程:kill -9 进程号
重启svn(/home/svn为自己的目录地址):svnserve -d -r /home/svn
最后看看是不是成功了,可以在本地测试一下,看看账户是否可用,对应的权限是不是已经有了,不是该组的用户应该不能访问没有赋予权限的目录的
helloword仓库:
现在对于def项目中,我不想让产品部的人看到开发部和数据部的目录下面的数据怎么办?可以通过 = 来设置,没有设置权限的人统统不能访问, = 这一句的目的,就是割断权限继承性,使得管理员可以定制某个目录及其子目录的权限,从而完全避开其父目录权限设置的影响
首先需要知道配置文件的位置,比如我们的服务器中我就找到很多关于svn的目录,甚至分不清哪个目录下才是真正的配置文件:
root@handou:~# find / -name subversion
/home/handou/workspace/subversion-1.8.11/subversion
/home/handou/workspace/subversion-1.8.11/subversion/bindings/javahl/src/org/apache/subversion
/home/handou/workspace/subversion-1.8.11/subversion/bindings/javahl/src/org/tigris/subversion
/home/handou/workspace/subversion-1.8.11/subversion/bindings/javahl/tests/org/apache/subversion
/home/handou/workspace/subversion-1.8.11/subversion/bindings/javahl/tests/org/tigris/subversion
/etc/bash_completion.d/subversion
/etc/subversion
/usr/share/doc/subversion
查找所得结果可以确定应该是在 /etc/subversion下,切换到subversion下有多个文件:
config config.dpkg-dist dav_svn.authz dav_svn.passwd passwd servers
可能需要一一查看下都是什么内容,其实主要是dav_svn.authz dav_svn.passwd这两个文件,一个存放用户名,一个存放密码,dav_svn.authz内容包含账号和权限:
[groups]
apiadmin=yuedun
[handou:/]
@admin=rw
@apiadmin=rw
可以编辑这个文件添加账号,然后添加密码,但是不能直接编辑dav_svn.passwd,这里面是加密数据,需要使用Apache的htpasswd命令添加。
然后会提示输入密码,就此完成svn账号设置。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)