linux svn apache
借助apache运行的svn服务器
一:安装Apache HTTP Server
1、安装Apache HTTP Server
yum install httpd httpd-devel -y
2、修改配置文件
命令:vi /etc/httpd/conf/httpd.conf
找到ServerName配置文件,修改内容如下
ServerName localhost:80
3、增加防火墙使之外部可以访问80端口
4、启动Apache HTTP Server 服务
service httpd start
5、测试访问
http://ip
二:安装svn服务
1、停止Apache HTTP Server服务
service httpd stop
2、安装svn模块
yum install mod-dav-svn subversion
3、检查svn模块安装结果
ls /etc/httpd/modules | grep svn
结果如下:
mod_authz_svn.so
mod_dav_svn.so
查看svn 版本信息: svn --version
4、为svn创建主目录
mkdir /svn
5、修改svn配置文件
vi /etc/httpd/conf.d/subversion.conf
#include /svn/httpd.conf
<Location /svn/> # 本地仓库目录位置 刚才创建的svn目录
DAV svn #模型简述
SVNListParentPath on #开启上级目录列表能力
SVNParentPath /svn #上级目录列表根目录 刚才创建的svn目录
AuthType Basic #授权类型
AuthName "Subversion repositories" #拥有者名称
AuthUserFile /svn/passwd.http #拥有者文件命名
AuthzSVNAccessFile /svn/authz #拥有者授权文件命名
Require valid-user
</Location>
RedirectMatch ^(/svn)$ $1/
6、创建密码文件和授权文件
touch /svn/passwd.http
touch /svn/authz
三:安装mysql数据库(此数据库专为SVN服务器提供数据存储。与业务系统数据库分类)
1、检查当前系统中是否安装了MySql
rpm -qa | grep mysql
mysql-libs-5.1.71-1.el6.x86_64
2、安装mysql
yum install mysql-server mysql mysql-devel
3、启动MySql服务
service mysqld start
4、检查MySql服务状态
service mysqld status
5、防火墙配置中增加3306端口访问
6、设置MySQL数据库root的用户初始密码
mysqladmin -uroot password 'root'
7、为MySQL数据库root用户授权(默认智能本地访问)
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
FLUSH PRIVILEGES;
8、查看授权信息
select user,host from mysql.user;
其中user为MySQL数据库用户名,host为可访问的地址(%代表所有位置都可以访问)
三:安装svnadmin
1、简介
Svn Admin 是一个 Java 开发的管理 Svn 服务器的项目用户的 web 应用。安装好 Svn 服务
器端好,把 Svn Admin 部署好,就可以通过 web 浏览器管理 Svn 的项目,管理项目的用户,
管理项目的权限。使得管理配置 Svn 简便,再也不需要每次都到服务器手工修改配置文件
2、svnamdin的优点
多数据库: Svn 项目配置数据保存在数据库,支持所有数据库(默认 MySQL/Oracle/SQLServer)。
多操作系统:支持 Window,Linux 等操作系统。
权限控制:管理员可以随意分配权限、项目管理员可以管理项目成员、成员只能查看和
修改自己的密码。
支持多项目、多用户、多用户组 Group(默认带有“项目管理组”、 “项目开发组”、 “项目测试组”)。
安全:密码加密保存。
多协议:支持 svn 协议和 http 协议(从 2.0 开始支持 Apache 服务器单库方式,从 3.0 开始支持 Apache 多库方式)
仓库浏览(从 3.0.2 开始)
多语言(从 3.0.2 开始)
3、安装tomcat
svnadmin 是使用 java 编写的一个 WAR 应用,需要提供一个 Java WEB 中间件才能正常使用
4、上传svnadmin到webapps中
5、修改svnadmin应用配置
vi svnadmin/WEB-INF/jdbc.properties
数据库信息进行修改
6、创建database&导入sql脚本
6.1、create database svnadmin default charset utf8 collate utf8_general_ci;
6.2、use svnadmin
6.3、执行脚本文件
source /.../svnadmin/db/mysql5.sql
source /../svnadmin/db/lang/en.sql
7、启动httpd服务
8、启动tomcat服务
四:访问svnadmin
1、访问
http://ip:port/svnadmin
系统默认首次进去的时候输入管理员用户名和密码
2、创建版本库
创建的版本仓库任意信息包含中文,必须要求, 数据库的对应 database 字符集支持中
文,数据库导入的 sql 文件必须有 en.sql 数据, tomcat 中的 server.xml 配置文件中必须增加
URIEncoding=”UTF-8”信息
项目:库名,自定义
类型:http多库 类型为http协议多库
路径:服务器系统中的目录信息,在系统中寻找路径从根目录"/"开始
URL:http协议访问SVN所在主机,后序地址为库路劲(http://192.168.1.12/svn/svn_test)
3、用户权限问题
创建库以后,点击进入svn会提示认证失败
1、用户组的manager里面添加当前用户
2、/svn下面的目录访问的用户是root用户,svn系统访问的用户是apache(/etc/httpd/conf/httpd.conf中 User和Group)
修改创建库目录访问用户:chown -R apache.apache svn_test
每次增加svn库时都需要修改目录拥有者
3、关闭seLinux(高级防火墙)
修改前SELINUX=enforcing 修改后 SELINUX=disabled
4、重启服务器
linux svn apache的更多相关文章
- linux svn用法
创建一个版本库.项目目录. 创建一个版本库: svnadmin create ~/SVNTestRepo 创建一个项目目录: svn mkdir file:///home/lsf/SVNTestRep ...
- linux svn安装和配置
linux svn安装和配置,不结合apache http://blog.51yip.com/server/901.html 张映 发表于 2010-07-07 分类目录: 服务器相关 今天有个同事在 ...
- Linux SvN操作
Linux svn管理工具的12个命令实践 2010-08-25 10:50 佚名 icycling.cublog.cn 字号:T | T 目前,绝大多数开源软件都使用svn作为代码版本管理软件.本文 ...
- CentOS 7 使用SVN+Apache搭建版本控制服务器
svn简介 Subversion是一个免费/开源的版本控制系统, Subversion 可以跨越时间地对文件和目录, 以及它们的修改进行管理. 这就允许你恢复 数据的旧版本, 或检查数据的修改历史. ...
- 实战:使用SVN+apache搭建一个版本控制服务器
今天讲的内容: 实战:使用SVN+apache搭建一个版本控制服务器 每天: 10:00 晚上:21:00 服务端:xuegod63.cn IP:192.168.10.63 服务概述: SVN(s ...
- Jenkins +Maven+Tomcat+SVN +Apache项目持续集成构建
详解Jenkins +Maven+Tomcat+SVN +Apache项目持续集成 一:前言 1. Jenkins jenkins版本大全http://mirrors.jenkins-ci.org/ ...
- svn+apache搭建版本控制服务器
Centos7(linux)搭建版本控制服务器(svn+apache) 1.简介: 版本控制服务器: 版本控制(Revision control)是一种软体工程技巧,籍以在开发的过程中,确保由不同人所 ...
- Linux SVN 搭建(YUM)安装
安装说明 系统环境:CentOS安装方式:yum install (源码安装容易产生版本兼容的问题)安装软件:系统自动下载SVN软件 Linux svn服务端配置 检查已安装版本 #检查是否安装了低版 ...
- debian 安装svn apache 小记. AuthzSVNAccessFile 不生效问题.
docker 使用docker镜像搭建svn+Apache环境 https://my.oschina.net/u/2006667/blog/637882 1,安装 apache ,svnapt-get ...
随机推荐
- Java学习笔记二十四:Java中的Object类
Java中的Object类 一:什么是Object类: Object类是所有类的父类,相当于所有类的老祖宗,如果一个类没有使用extends关键字明确标识继承另外一个类,那么这个类默认继承Object ...
- 通过burpsuite替换cookie登录后台
通过burpsuite可以比较方便的替换http头部的cookie.useragent等字段,在获取到用户的cookie后实现登录.具体使用方法如下: 如替换cookie,可以写正则表达式^Cooki ...
- C语言调整数组使奇数全部都位于偶数前面
//输入一个整数数组,实现一个函数,//来调整该数组中数字的顺序使得数组中所有的奇数 位于数组的前半部分,//所有偶数 位于数组的后半部分. #include<stdio.h>#inclu ...
- Git中分支merge和rebase的适用场景及区别
Git merge是用来合并两个分支的. git merge b # 将b分支合并到当前分支 同样 git rebase b,也是把 b分支合并到当前分支 原理 如下: 假设你现在基于远程分 ...
- BZOJ1588_营业额统计_KEY
题目传送门 分析题意可得,希望求与每个数最相近的数. 二叉搜索树的简单题,因为可能被卡成O(N),考虑平衡树. 因为Treap较简单,此处用Treap编写代码. code: #include < ...
- JAVA面试中问及HIBERNATE与 MYBATIS的对比
第一方面:开发速度的对比 就开发速度而言,Hibernate的真正掌握要比Mybatis来得难些.Mybatis框架相对简单很容易上手,但也相对简陋些.个人觉得要用好Mybatis还是首先要先理解好H ...
- cakephp中find('list')的使用
运用一.快速实现下拉菜单 控制器中,使用find('list')返回的是键值对的数组,键名是array的第一个参数id,键值就是第二个参数content. public function list_s ...
- NB-IOT移植移动onenet基础通信套件之Object_ID,实例ID,资源ID
1. 访问是按照分层的,Object_ID/实例ID/资源ID,对应每一层ID的数据类型,目前是分为3层,一个实例下面可以有多个实例id,对下面的数据结构来说,如果是资源ID的话,类型只能是asBuf ...
- TPO-13 C2 How to use language lab
TPO-13 C2 How to use language lab 第 1 段 1.Listen to a conversation between a student and the languag ...
- JS里点击事件判断是否 触发了节点 和给标签添加class属性
$("#activityType").click(function(e){ if(e.target==$("#bb")[0]){ var bb=document ...