Centos6.5搭建svn+http访问

前端之家收集整理的这篇文章主要介绍了Centos6.5搭建svn+http访问前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
  • SVN简介

SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。

  • 搭建SVN

  1. svn安装
    yum install subversion
  2. 判断是否安装成功
    svnserve --version
  3. 建立svn版本库
    mkdir -p /svn/project/repos
  4. 创建版本库
    svnadmin create /svn/project/repos
  5. 以上命令执行完了之后就会在repos下创建多个文件

完成上面步骤后便是配置文件

  • 配置password

  • [users]
  • #harry=harryssecret
  • #sally=sallyssecret
  • hello=123

创建个简单的账号密码,账号:hello, 密码:123。

  • 配置权限authz

  • [/]
  • hello=rw

这个其实还有其他配置,以后再详细更新介绍,这里是指定了hello用户 拥有对所有文件的读写操作

  • 配置svnserve.conf

  • [general]
  • anon-access=none#使非授权用户无法访问
  • auth-access=write#使授权用户有写权限
  • password-db=/svn/project/repos/conf/passwd
  • authz-db= /svn/project/repos/conf/authz #访问控制文件

必须在general目录下,采用默认配置. 以上语句都必须顶格写,去掉注释,左侧不能留空格,否则会出错。

总结下,完成上面的配置后,svn就可以使用了

  1. 启动svn #svnserve -d -r /svn
  2. 查看服务 #ps -ef|grep svn
  3. 关闭svn服务 #kill -9 pid
  • 配置SVN服务器的http服务

因为svn密码为明文,http不支持明文.需要生成一个webpasswd文件

#cd /svn/project/repos/conf

#htpasswd webpasswd hello

执行完上述步骤后,便会多出一个webpasswd文件

  • 注意如果需要,多次加入用户,则用htpasswd -m
    #htpasswd -m webpasswd hello2
  • 配置Apache

#vim /etc/httpd/conf/httpd.conf

文件最后添加一下代码

  • <Location/svn>
  • DAVsvn
  • SVNPath/svn/project/repos/
  • AuthTypeBasic
  • AuthName"svnforproject"
  • AuthUserFile/svn/project/repos/conf/webpasswd
  • AuthzSVNAccessFile/svn/project/repos/conf/authz
  • Satisfyall
  • Requirevalid-user
  • </Location>

启动http

#/etc/init.d/httpd restart

结果报如下错误

这是因为,系统没有安装mod_dav_svn,安装一下就可以了

#yum install mod_dav_svn

#yum install mod_authz_svn

#chmod -R o+rw /svn

//加下权限 不然用http访问会报 SVN Can’t open file ‘/XXX/xxx/db/txn-current-lock’错误

再启动下就可以了

访问http://IP/svn/ 就可以了,输入账号密码就OK了,客户端可以下在小乌龟。。。。

以上只是最简单的配置。。。还可以以设置https,还有与邮箱同步,数据库同步等等,以后有时间再慢慢研究。。。

猜你在找的CentOS相关文章