CENTOS 7/UBUNTU 上搭建svn的方法总结
来源:互联网 发布:mac桌面壁纸设置 编辑:程序博客网 时间:2024/06/11 06:03
搭建主要思路是采用apache2和subversion
subversion服务器端主要由svnadmin组成,起初始化svn库的目录结构作用,真正起到svn服务功能的其实是apache加apache_svn模块插件。svn客户端是采用http协议与apache交互。特别是通过option方法进行数据提交。
centos 7上,分如下步骤:
一、规划设计
计划用/home/svn作为所有SVN工程的根目录,里面划分myap,myrouter等工程
myap工程下又划分成
myap/trunk
myap/tags
myap/branches
分别存放主线代码,标签和分支代码
其他工程结构类似。
二、服务器软件安装
服务器软件需要APACHE和DAV SVN模块
执行:
sudo yum install httpd
sudo yum install subversion mod_dav_svn
如果是UBUNTU,则执行下面命令,下面的安装在CENTOS环境上通过:
sudo apt-get install subversion
sudo apt-get install libapache2-svn
三、创建SNV仓库
sudo mkdir /home/svn
sudo svnadmin create /home/svn/myap
四、SVN与APACHE整合
即配置APACHE中SVN模块,让APACHE提供SVN的服务
默认安装后,在/etc/httpd/conf.modules.d目录就已存在一个10-subversion.conf文件,这就是自动加载SVN 模块的配置文件,需要修改。
cat 10-subversion.conf
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
LoadModule dontdothat_module modules/mod_dontdothat.so
在文件未尾,增加如下内容
cat 10-subversion.conf
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
LoadModule dontdothat_module modules/mod_dontdothat.so
下面是localtion标签开始”< location /svn>” ,/svn意味着以后访问要加http://localhost/svn/前缀,然后才到某某工程,如/svn/myap
在此标签下的内容如下:
DAV svn
SVNParentPath /home/svn -- 这是SVN路径根
AuthType Basic
AuthName “Basic Auth - Apache. It work! Powered by billy.”
AuthUserFile /etc/httpd/dav_svn.passwd -- 指明了认证文件
AuthzSVNAccessFile /etc/httpd/dav_svn.authz --指明了访问控制文件
require valid-user --只允许SVN用户访问
最后是localtion标签结束标志””
上述配置表明:认证文件将采用/etc/httpd/dav_svn.passwd,访问控制文件将采用/etc/httpd/dav_svn.authz
所有访问都需要加前缀/svn/
所有访问都需要用户名密码
相应的用户名密码就位于文件/etc/httpd/dav_svn.passwd中
五、创建SVN用户
首次创建和第二次创建使用的参数有所不一样,首次是:
首次创建用户
sudo htpasswd -cb /etc/httpd/dav_svn.passwd user password
第二次添加
sudo htpasswd -b /etc/httpd/dav_svn.passwd new-user new-password
因为c参数将重新生成一个文件,所以第二次添加时不可再加C参数
六、配置SVN权限
前面提到,权限控制在/etc/httpd/dav_authz
cat dav_svn.authz
[groups]
developer=snowpiaop
[myap:/]
@developer=rw
七、修改目录权限
sudo chown apache.apache /home/svn -R
sudo chmod 777 /home/svn -R
sudo setenforce 0
sudo systemctl restart httpd.service
八、入库
sudo svn import myap file:///home/svn/myap/trunk -m “init version”
问题一,svn import入库后取出,缺少工具链的.o文件
原因:global-ignores是提交时忽略的文件类型,默认含.o
编辑/etc/subversion/config 文件,修改相关设置,或者svn add *.o重新加一遍
二,svn 访问时没要求认证
LimitExcept GET PROPFIND OPTIONS REPORT
Require valid-user
意味除GET方法外,限制有效用户可以用,也就是说匿名用户允许读GET
修改/etc/apache2/mods-available/dav_svn.conf
limitexcept删除后解决。
这个文件修改后要重启apache2
- CENTOS 7/UBUNTU 上搭建svn的方法总结
- CentOS上搭建svn服务器
- ubuntu下搭建svn服务器的方法
- ubuntu上搭建svn server
- ubuntu上搭建svn服务器
- Ubuntu 上搭建SVN 服务器
- CentOS 7 SVN的搭建和使用
- 经验分享之在CentOS 7上搭建SVN服务器
- 经验分享之在CentOS 7上搭建SVN服务器
- 经验分享之在 CentOS 7 上搭建支持 HTTP 协议的 SVN 服务器
- 在centos上搭建svn服务器
- centOS下svn的搭建
- centos下svn的搭建
- CentOS 7搭建SVN服务器
- CentOS 7搭建SVN服务器
- CentOS 7搭建SVN服务器
- CentOS 7搭建SVN服务器
- CentOS 7 搭建SVN服务器
- 端午节趣事
- java 线程synchronized 线程同步
- 读懂IL代码就这么简单 (一)
- 在varnish、squid、apache、nginx中选出一个更好的缓存服务器
- 百度地图键值(ak)的获取
- CENTOS 7/UBUNTU 上搭建svn的方法总结
- 任意连通图的哈密顿回路计算流程
- 正则匹配多个空格 换行
- IL指令详细
- Centos开机自动挂载windows中的ntfs磁盘
- Android View 给触摸操作提供视觉提示 细致才是王道
- 注释转换 ——C++注释转换为标准C语言注释
- jquery easyui 问题合集
- Android_常见控件之spinner详解