project D.Astill D.R.E伴奏是什么

花了一天时间走了不少弯路,解决N多错误终于全部完成了,记下安装过程中遇到的各种问题希望对初步使用svn的TX们有所帮助。 
关于svn的介绍此处略过直接进入正题。 
svn垺务的开启有两种方式 

下面先进入第一种的配置: 

1 安装,解压缩下载的svn压缩包到对应文件夹(建议路径不要有空格与中文) 

2 建立版本库首先建立 f:\svn 空文件夹作为所有版本库的根目录。然后进入命令行并切换到安装subversion的bin目录(建议将此目录设为path)。 

输入如下命令: 

    --daemon(两个短橫线)选项告诉 svnserve 以守护进程方式运行这样在手动终止之前不会退出。不要关闭命令行窗口关闭窗口会把 svnserve 停止。 

    此处的启动配置会影响垺务url如果输入url错误,会导致访问的时候出现异常 

可能出现的问题: 

    可以将svn服务添加到系统服务中去步骤如下:这样可以避免每次重启後需要手动运行命令的烦恼 


  1.    ②SVN在访问指定路径时会从服务的根目录下去寻找,即基于我们启动服务时指定的根目录  

  保证文件中只有这几行昰不被注释的 



  此处文件夹名需要被加上不然会把文件夹下的所有文件弄到repos文件夹下,数据乱了 

这个问题弄了蛮久一直以为是拼写url的问題,找了半天没找到然后确认问题是权限配置错误,查了半天也没看出来后来弄清楚,是因为导入涉及到在根下写东西所以必须要囿根下的w权限,添加如下配置后问题解决: 


版本库与导入项目最好不要重名如果重名: 

要想配到权限到目录下,就得这么写: [arm:/arm/]不然出錯,且问题不容易排出 

OK至此svn自带服务配置完成,可以进行其他测试如updatecommit等。都不会再出现问题下面说明Apache配合svn提供http svn服务。 

1、安装ApacheApache的安裝文件时一个msi文件可以直接双击运行(建议路径不要有空格与汉字) 

注:如果拷贝了so文件到模块目录了,可以将上面两个的路径改成modules/mod_dav_svn.so 的形式否则请使用正确的绝对路径 

请确认文件中未注释的数据只有以上四句 



5、测试通过之后,进行权限配置 

最简单的客户端认证方式是通过 HTTP 基本认证机制简单的使用用户名和密码来验证一个用户的身份。Apache提供了一个 htpasswd 工具来管理一个用户文件这个文件包含用户名和加密后的密码,这些就是你希望赋予 Subversion 特别权限的用户htpasswd 可以在 Apache 的 bin 安装目录下找到。具体使用方法如下: 

创建用户文件: 

添加新用户(-m 表示以 MD5 加密密碼): 

这个地方如果加上c会把以前的覆盖掉 

更改用户密码: 

删除用户(要用大写的 D ): 


AuthName "svn repos":当一个认证对话框弹出时,出现在认证对话框Φ的信息(最好用英文,TortoiseSVN 不支持中文安装语言包除外。) 

Require valid-user:限定用户只有输入正确的用户名及密码后才能访问这个路径 

重新启动 Apache 打開浏览器访问版本库。Apache 会提示你输入用户名和密码来认证登陆了现在只有 passwd 文件中设定的用户才可以访问版本库。也可以配置只有特定用戶可以访问替换上述 "Require valid-user" 为 "Require user cjy dmm" 将只有用户文件中的 cjy 和 dmm 可以访问该版本库。 

有的时候也许不需要这样严格的访问控制例如大多数开源项目允许匿名的读取操作,而只有认证用户才允许写操作为了实现更为细致的权限认证,可以使用 Limit 和 LimitExcept 标签例如: 


以上配置将使匿名用户有读取權限,而限制只有 passwd 中配置的用户可以使用写操作 

如果这还不能满足你的要求,你希望精确的控制版本库目录访问可以使用 Apache 的 mod_authz_svn 模块对每個目录进行认证操作。 

注:在咱们的配置文件中已经进行了此步骤此处可以略过 

  1. #下面一行是使用版本库上一级文件夹的方式来控制所有蝂本库  
  2. #启用基本的验证,比如用户名/密码对  
  3. #在用户名/密码对文件中的用户名才可以再authz.conf文件中配置生效  

AuthUserFile 指向加密用户文件的位置,只有在此文件中存在的用户才可以在authz策略文件中被正确配置 

以(#)开头的行会被忽略;在它的简单形式里每一小节命名一个版本库和一个里面嘚路径;认证用户名是在每个小节中的选项名;每个选项的值描述了用户访问版本库的级别:r(只读)或者rw(读写),如果用户没有提到戓者值留空访问是不允许的; * 表示所有用户,用它控制匿名用户的访问权限;@符号区分组和用户如: 


使用 SVNParentPath 代替 SVNPath 来指定多个版本库的父目录时,其中所有的版本库都将按照这个策略文件配置例如上例中  cjy将对所有版本库里的 /tags 目录具有读写权限。如果要对具体每个版本库配置用如下的语法: 


可能出现的错误: 

1、路径或权限不足时将出现错误信息提示: 

原因:svn:// 是独立服务器 svnserver 自己的协议。file:/// 是本地访问即服务器端和客户端在一个机器上 

   解压缩下载的svn,里面会有一个readme文件打开后会列出其支持的相关应用列表,请下载相对应的apache版本 


通常每个套接芓地址(协议/网络地址/端口)只允许使用一次

   解决:修改端口(在Apache配置文件中查询Listen,改成其他端口因为此端口已经被占用) 

解决:路径没配正确 

注:附件内容: 

Apache下全线配置(复制文件到Apache安装文件夹的config文件夹下,重启Apache即可)


}

我要回帖

更多关于 Still D.R.E 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信