您的位置:软件测试 > 开源软件测试 > 开源配置管理工具 > SVN
Subversion使用手记
作者:网络转载 发布时间:[ 2012/12/4 17:15:02 ] 推荐标签:

   启动svnserve服务

svnserve 是一个轻量级的服务, 使用自定义的协议通过TCP/IP与客户端通讯。
客户端通过由 svn:// 或者 svn+ssh:// 开始的URL访问svnserve服务器。
启动服务器
端口监控(inetd)模式
如果你打算用端口监控来启动处理客户的访问请求的进程,你可以通过传入参数-i来启动:
svnserve -i
当使用-i参数启动服务的时候,svnserve通过stdin和stdout用自定义协议和客户端
通讯。同时服务侦听3690端口。
独立端口监控进程
使用参数-d启动服务作为一个独立的端口监控进程。
svnserve -d
当运行svnserve在独立端口监控模式时,你可以使用--listen-port=和--listen-host=参数来自定义需要的端口和主机名称。当前模式默认的端口是3690。
当然,也有第三种方法启动svnserve,也是使用“隧道模式”,使用-t参数启动服务。这个模式要求远程服务程序,如RSH或SSH,已经成功验证用户,并且使用已经校验的用户启动一个属于该用户的svnserve进程。当使用该模式提供服务时,要确认启动的用户帐户具备对Repository的读/写权限。
设置项目目录
当svnserve开始运行时,它将会暴露所有的Repository到网络上。不过,当客户端需要获取一个Repository的内容时,需要指定Reopsitory的路径。例如:一个Repository放在文件路径
C:/Project Repository/Project1
那么当客户端访问时,需要指定路径:
svn://host/C:/Project Repository/Project1
所以,为了增加保密性,你可以使用参数-r指定需要暴露的Repository的路径,当用户访问时,只需指定Repository的名称即可。例如上面的Repository,当启动服务时,使用如下的方法:
svn -d -r C:/Project Repository
那么当客户端访问时,则使用
svn://host/Project1
可以获取数据了。
内置的验证和授权
当客户端连接到一个svnserve进程时,下面的流程会触发:
1、客户选择一个指定的Repository;
2、服务处理Repository的配置文件 conf/svnserve.conf文件,并且开始执行在其中定义的所有验证和授权策略;
3、依赖与情形和授权策略:
a)客户端也许允许匿名访问而不需要验证,或者
b)客户但也许需要在任何时候被要求验证,或者
c)假如处于"隧道模式"中,客户端将声明自己已经可以被外部验证。
很显然,如上所说,用户文件是一个名为svnserve.conf的,放在conf目录下的文件。
现在我们来看看如何配置这个文件:
这个配置文件放置在Repository的目录中的conf目录下,它有两个节点:
[general]
[users]
其中,[general]的配置信息有:
anon-access = read
auth-access = write
其中表示对于验证有效的以及没通过验证的用户可以做什么事情。分别有read, write和none
[users]的标签的配置内容有:
USERNAME = PASSWORD
password-db = passwd
realm = My First Repository
其中表示,用户名对应的密码是什么,或者指定一个存储用户名和密码的文件的相对或路径以及指定了Repository的验证领域。如果两个Repository有相同的验证领域,那么它们应该有相同的密码数据库,反之亦然。默认的领域是指向当前的Repository的路径,与服务器的Repository的根目录相关。

上一页12下一页
软件测试工具 | 联系我们 | 投诉建议 | 诚聘英才 | 申请使用列表 | 网站地图
沪ICP备07036474 2003-2017 版权所有 上海泽众软件科技有限公司 Shanghai ZeZhong Software Co.,Ltd