上一篇,搭建了环境,这一篇,讲如何通过svnadmin来管理svn,说实话这个svnadmin看起来,真的很简约。。。不忍吐槽了,遇到验证失败的情况,需要检查用户组、subversion.conf 配置、还有项目是否是多库的模式
1、界面认识
1.1注册管理员,
1.2主界面
主界面看起来,也是很直接的,感觉特别的简单
1.3新建项目配置
这个项目地址 xxx 项目名称
路径 /svn/xxx 这个是配置的svn的文件目录
url ip:port/svn/xxx 这个端口 port是httpd的端口,不是tomcat的
之间是有相互的关联关系的,相当于做加法一样
添加成功
在/svn的目录有我们创建的项目产生
2、授权操作
2.1查看权限
我们可以看到,这个文件夹的所属用户是root用户,所以我们是不可能有操作权限的,需要配置权限,这个用户组是Apache
这个是认证失败,失败的原因就是没有配置这个项目目录的操作权限。
2.2查看httpd的权限组
查看配置文件,我们发现apache(Svn)所用到的权限都是 apache,而创建的文件夹是root用户,所以我们不能操作root用户创建的文件夹
#查看配置文件
cat /etc/httpd/conf/httpd.conf
2.3修改权限
对于授权管理,每次建立一个项目,都需要手动的给他修改用户组和设定权限
#修改为apache用户管理
chown -R apache.apache yellowcong-parent
#添加读写权限,解决文件新建和读取的问题
chmod -R 777 yellowcong-parent
3、关闭SELinux
关闭SELinux的访问权限配置,避免和SVN的冲突
#编辑配置
vim /etc/selinux/config
#将Selinux关闭 ,修改SELINUX=enforcing 为 disabled
SELINUX=disabled
#重启生效
reboot
/etc/selinux/config配置文件,修改SELINUX的配置
4、获取项目
通过svn客户端,来下载项目,用户名和密码是我们自己指定的
4.1输入用户密码(需要保存)
4.2提交文件到服务器
提交完事后,看到了版本号 version =1
4.3服务器文件查看
在服务器上可以看到刚刚提交上去的所有文件
问题集合
1、配置了权限,仍是认证失败
在公司搭建的时候的错误,都是认证失败了
同时,后台的tomcat报错
svn: E175002: PROPFIND of '/sv/yellowcong-parent': 405 Method Not Allowed (http://192.168.66.120)
解决后的效果
问题原因
1、没有配置权限
subversion.conf 配置多库的时候,配置的问题,没有配置RedirectMatch ^(/svn)1/
通过“http://localhost/svn/” 来访问仓库列表,如果想让“http://localhost/svn”也起作用的话,需要在的后面增加重定向的设置:RedirectMatch ^(/svn)1/ ,当然也可以采用RewriteEngine之类的办法。
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn/>
DAV svn
SVNListParentPath on
SVNParentPath /svn
AuthType Basic
AuthName "Authorization"
AuthUserFile /svn/passwd.http
AuthzSVNAccessFile /svn/authz
Require valid-user
</Location>
RedirectMatch ^(/svn)$ $1/
2、创建的项目不对,需要选择多库的模式
3、项目权限配置问题,需要死apache的用户组,才可以