CentOS 6.8 + Subversion + Usvn 搭建版本管理服务器

snailshadow 标签: subversionusvn

一. Subversion 简介

Subversion是一个自由,开源的版本控制系统。Subversion将文件存放在中心版本库里。这个版本库很像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况。这样就可以籍此将数据恢复到以前的版本,并可以查看数据的更改细节。

二. 环境准备CentOS 6.8

1,操作系统内核版本

[[email protected] ~]# uname -r
2.6.32-642.el6.x86_64

2,关闭selinux

[[email protected] ~]# vim /etc/selinux/config

SELINUX=disabled

3,关闭防火墙

[[email protected] ~]#service iptables stop

[[email protected] ~]#chkconfig iptables off

4,配置yum源(这里使用163yum源和epelyum源)

[[email protected] ~]#wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS6-Base-163.repo

[[email protected] ~]#rpm -ivh http://mirrors.yun-idc.com/epel//6/x86_64/epel-release-6-8.noarch.rpm

修改配置文件

#vim /etc/yum.repos.d/CentOS-Base.repo

:%s/$releasever/6/g

yum clean all

yum makecache

搞定!!!

三、安装

1. 安装所需软件

[[email protected] ~]#yum install subversion httpd mod_dav_svn php php-mysql mysql-server perl-DBI perl-DBD-mysql mysql-devel mod_auth_mysql

2,查看 subversion 是否安装成功

[[email protected] ~]#svnserve --version
svnserve,版本 1.6.11 (r934486)

------略

3,启动httpd、mysqld服务

[[email protected] ~]#service httpd start

[[email protected] ~]#service mysqld start

[[email protected] ~]#chkconfig httpd on

[[email protected] ~]#chkconfig mysqld on

[[email protected] ~]# chkconfig svnserve on

4,设置mysqld密码和访问权限

[[email protected] ~]#mysqladmin -u root password 123456

[[email protected] ~]#mysql -uroot –pcoship

mysql> grant all on *.* to ‘root‘@‘%‘ identified by 123456 WITH GRANT OPTION;
Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

四.配置Usvn

1,从GitHub下载Usvn

[[email protected] ~]#wget https://github.com/usvn/usvn/archive/1.0.7.tar.gz

2,安装配置Usvn

[[email protected] ~]#tar -zxvf 1.0.7.tar.gz

[[email protected] ~]#mv usvn-1.0.7/ /var/www/html

[[email protected] ~]#chown -R apache:apache /var/www/html/usvn

3,配置Apache目录允许重写(默认已经配好)

vim /etc/httpd/conf/httpd.conf

文件最后加入

<Directory "/var/www/html/">

AllowOverride all                                 ---此项需要修改,否则后面会报错

Order allow,deny

Allow from all

</Directory>

4,重启apache服务

[[email protected] ~]#service httpd restart

5,浏览器输入http://ip/usvn/public/install.php 开始安装

一直点击下一步,如果出现这个报错,就说明httpd.conf配置文件中,根目录的AllowOverride没有配置为yes

选择时区和语言:

设置svn根目录,我这里使用默认配置

创建版本库路径

[[email protected] ~]#mdkir /home/subversion/

创建密码文件和权限文件路径

[[email protected] ~]#mdkir /home/subversion/passwd

给目录授权

chown apache:apache –R /home/subversion/

配置数据库

创建管理员,其中密码必须8位以上(admin/1qaz2wsx)

最后一步将生成的配置,添加到httpd.conf文件结尾

重启httpd服务

[[email protected] ~]#service httpd restart

创建项目,用户组,用户(略)

客户端连接项目:http://10.80.0.161/usvn/public/svn/docs/       docs为项目名称

五.常见问题

1、安装到最后遇到一个头痛的问题,当目录出现中文时无法设置目录权限

解决方法:

  • 设置系统编码:vim /etc/sysconfig/i18n  改成如下

LANG="zh_CN.UTF-8"

SYSFONT="latarcyrheb-sun16"

  • 修改USVN语言环境:vim /var/www/html/usvn/app/bootstrap.php

在文件最前面加上

setlocale(LC_ALL, ‘zh_CN.UTF-8‘);

2、提交log不能为空

vim ${svn_dir}/hooks/pre-commit

#!/bin/sh
REPOS="$1"
TXN="$2"

# Make sure that the log message contains some text.
SVNLOOK=/usr/bin/svnlook
$SVNLOOK log -t "$TXN" "$REPOS" |    grep "[a-zA-Z0-9]" > /dev/null
#|| exit 1

#commit-access-control.pl "$REPOS" "$TXN" commit-access-control.cfg || exit 1
LOGMSG=`$SVNLOOK log -t "$TXN" "$REPOS" | grep "[a-zA-Z0-9]" | wc -c`
if [ "$LOGMSG" -lt 10 ];
then
    echo -e "svn log cann‘t less than 10 character" 1>&2
    exit 1
fi
# All checks passed, so allow the commit.
exit 0
chown apache:apache  pre-commit
chmod +x pre-commit
时间: 2024-10-13 19:08:55

CentOS 6.8 + Subversion + Usvn 搭建版本管理服务器的相关文章

CentOS 6.3 Subversion + Usvn 搭建版本管理服务器

一. Subversion 简介 Subversion是一个自由,开源的版本控制系统.在Subversion管理下,文件和目录可以超越时空.Subversion将文件存放在中心版本库里.这个版本库很像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况.这样就可以籍此将数据恢复到以前的版本,并可以查看数据的更改细节.正因为如此,许多人将版本控制系统当作一种神奇的“时间机器”. 二. 环境准备 用1台cent os 6.3. [[email protected] ~]# uname

CentOS 7 使用SVN+Apache搭建版本控制服务器

svn简介 Subversion是一个免费/开源的版本控制系统, Subversion 可以跨越时间地对文件和目录, 以及它们的修改进行管理. 这就允许你恢复 数据的旧版本, 或检查数据的修改历史. 由于这个特点, 很多人把版本控制系统 看成是一种 "时间机器". Svn的组件 svn 客户端命令行工具 svnversion 用于报告工作副本状态 (就项目的版本号而言) 的工具 svnlook可以直接检查仓库的工具 svnadmin 用于创建, 调整或修复 Subversion 仓库的

CentOS 6.7局域网内搭建NTP服务器

1.安装ntp-4.2.8p4版本 cd /home/yongzhen/tools/ wget http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-4.2.8p4.tar.gz ll tar xf ntp-4.2.8p4.tar.gz  cd ntp-4.2.8p4 ./configure --prefix=/usr/local/ntp --enable-all-clocks --enable-parse-clocks echo $

CentOS 7.0:[1]搭建SVN服务器

1. 通过 yum install subversion来安装 2. 提示已经安装.查看svn版本 第二步: 创建svn版本库 第三步: 配置svn信息 2. 配置权限配置文件authz 3. 配置用户口令文件passwd 4. 配置 svn服务综合配置文件svnserve.conf 第四步: 启用svn,连接svn以及关闭svn 1. 启用svn svnserve -d -r /home/svn/project/ 2. 连接svn (1) 出现错误,认证失败 (2) 修改/root/.subv

【Centos】搭建 SVN 服务器

1.如果仅仅只是搭建 svn 服务器: (a).先检查 svn 是否已经安装了 rpm -qa subversion #输入这个命令后,会出现 subversion 版本号   (b).如果没有安装,使用下面命令: yum install subversion [-y] #这个 -y 命令,是表示在找到包之后,是否自动 选择 y,全自动.如果没有,在找到包之后,会询问 y / n   (c).安装 完成后 使用下面命令 查看版本: svnserve --version #查看版本号,是 -- 不

用系统为centos6的主机,搭建PXE服务器,实现批量安装centos6,7系统

1. iptables -F setenforce 0 临时关掉selinux,清掉防火墙 永久生效更改配置文件:vim /etc/sysconfig/selinux chkconfig iptables off 2. yum -y install httpd dhcp tftp-server 安装http服务用于构建镜像文件的yum仓库 安装dhcp服务,搭建dhcp服务器,为客户端分配ip地址 安装tftp服务,搭建tftp服务器,准备系统启动的引导文件,如pxelinux.0 menu32

CentOS 6.4 搭建git 服务器

CentOS 6.4 搭建git 服务器 (2013-11-22 19:04:09)转载▼ 标签: it 分类: Linux 此文件是依据markdown所编写,更好效果参见本人github的文档https://github.com/jackliu2013/recipes/blob/master/doc/linux/CentOS_6.4_git服务器搭建.md ##CentOS安装Git服务器 Centos 6.4 + Git 1.8.2.2 + gitosis## 1.查看Linux系统服务器

应用SVN(CentOS中搭建SVN服务器)

简单介绍如何在虚拟机 CentOS 中,搭建 SVN 服务器. 软件版本信息 Vmware 10.0.0 build-1295980 CentOS 7.0-1406-x64 Java 1.7.0_67_x64 Suberverson 1.7.14 GNU Wget 1.14 软件安装 subversion yum install subversion 需要选择时,选第一个选项 Wget 用于下载 Java wget --no-cookies --no-check-certificate --he

Linux(CentOS)搭建SVN服务器全攻略

虽然在windows上搭建SVN很简单,但是效能却不高,这当然是和linux相比了.然而在linux上搭建SVN却非常繁琐,所以今天这篇文章就来一步一步教您如何在Centos上搭建SVN 安装#yum install subversion 1)创建svn用户#groupadd svn#useradd -g sky user//是将user加入到sky組內切换用户#su svn以后代码库的创建维护等,都用这个帐户来操作. 2)创建版本库编辑.bash_profile 加上如下配置SVN_HOME=