预览加载中,请您耐心等待几秒...
1/4
2/4
3/4
4/4

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

三、配置SVN服务器如果你对我们如何配置SVN的服务器以及它的权限管理如何设置感兴趣欢迎你阅读下面的部分这里仅仅对第一节当中阐述的svn+ssh且使用密钥对认证的方式进行说明。希望我们以后有更多的同学可以承担服务器的维护工作。这里我们假设你已经比较熟悉Linux上的一些基本操作否则的话请去补习一下^_^1、创建独立的svn版本库属主也就是前面提到过的svnowner。我们希望svnowner自己是一个独立的用户同时也独立成组这样可以避免不必要的外人干扰。以下的操作除非特别说明均使用svnowner用户进行操作。2、以svnowner用户的身份创建版本库。首先使用umask027的方式设置掩码值使得之后创建的文件和目录对本组用户只有读权限组外用户无权限。如果考虑更严格的权限控制可以使用umask077方式仅允许svnowner用户自己访问拒绝本组、组外用户的任何访问。接着用svnadmincreatepath_for_repository在path_for_repository路径上创建版本库。从便利和权限一致性的角度建议把svn、svnserve、svnadmin、svnlook等svn工具改名为real_svnxxx再创建svn等脚本程序例如svn脚本可以这样编写:#!/bin/bashumask027/usr/bin/real_svn“$@”3、创建SSH公钥存放文件。在svnowner用户目录下创建.ssh目录并在其下创建authorized_keys文件目录和文件的都应当仅仅是本用户可读写的。将各用户发送给你的公钥添加到authorized_keys文件当中注意:一行一个公钥并在公钥前增加option字段例如:command="/home/svnowner/svnserve-t-rpath_for_repository–tunnel-user=svnuser1"no-port-forwardingno-agent-forwardingno-X11-forwardingno-ptyssh-rsa.......(RSAKeyhere)....user1上例当中用户user1使用该密钥对认证之后将会执行/home/svnowner下的svnserve显然这应当是一个包含设置umask的脚本并且以path_for_repository作为版本库的根svnserve运行于tunnel模式下使用的svn用户名是svnuser1。再次提醒大家的是以上内容需要在authorized_keys里面一行内写完。4、现在可以在版本库里面设置具体的svnuser的权限了。进入之前所创建的path_for_repository目录在其中有conf目录是负责配置版本库的设置的。找到svnserve.conf文件在其中去掉注释并修改的行有:anon-access=noneauth-access=writeauthz-db=authzrealm=XXXGroupRepository表明匿名用户无访问权限认证用户可以具备写权限版本库标识为“XXXGroupRepository”(此项可选)权限认证数据库是authz文件。于是再修改authz文件示例:[groups]manager=svnuser1members=svnuser2svnuser3[/]@manager=rw*=r[/src]@members=r@manager=rw*=[/src/arm7]svnuser2=rw@manager=rwsvnuser3=r*=[/src/arm9]svnuser3=rw@manager=rwsvnuser2=r*=[/shared]@members=rw以上示例的目的是将所有的目录置于manager可读写的方式members用户可以对src目录具有可读权限svnuser2和svnuser3分别对src/下的ARM7、ARM9目录具有读写权限三个用户均可以对/shared目录进行读写。匿名用户(其他用户)只能对/shared目录进行读操作。注意:目录路径均以path_for_repository作为根目录这一点需要牢记。SVN的一个明显的优点是可以针对单个目录具备独立的控制权限这是比cvs更灵活的方面。并且这也很适宜在团队这样的大范围内推广、且具有可控保密措施的实施方案。更详细的一个权限示例建议大家参考由“郑新星<zhengxinxing@gmail.com>”所写的《Subversion之路——实现精细的目录访问权限控制》。至此Subversion服务器的搭建工作完