linux 安装subversion-1.9.4

来源:互联网 发布:js offsetleft 编辑:程序博客网 时间:2024/05/16 05:36

1.下载:

https://subversion.apache.org/download.cgi#recommended-release

http://apache.fayea.com/subversion/subversion-1.9.4.tar.gz

Checksum (SHA1):43a7e47c1fca0ed9ba79564bdcd2d7ba0cbfb905

2.解压

 #tar xzfv subversion-1.9.4.tar.gz 

 解压到当前目录的subversion-1.9.4 目录下。

依赖软件包安装过程基本一样,解压 、配置、编译、安装

3.安装APR 和 apr-util

下载:

https://apr.apache.org/download.cgi

http://mirror.bit.edu.cn/apache//apr/apr-1.5.2.tar.gz

http://mirrors.cnnic.cn/apache//apr/apr-util-1.5.4.tar.gz

安装 apr(使用root)

#tar zxvf apr-1.5.2.tar.gz   

#cd apr-1.5.2   

#./configure --prefix=/usr/local/apr 

#make && make install  

安装 apr-util (使用root)

#tar xzfv apr-util-1.5.4.tar.gz

#cd apr-util-1.5.4

#./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

#make && make install  

4 安装sqlite

下载

http://www.sqlite.org/download.html

http://www.sqlite.org/2016/sqlite-autoconf-3130000.tar.gz

安装(使用root):

#tar xzfv sqlite-autoconf-3130000.tar.gz

#cd sqlite-autoconf-3130000

#./configure --prefix=/usr/local/sqlite

#make && make install

5.安装zib

下载:

http://www.zlib.net/

http://zlib.net/zlib-1.2.8.tar.gz (有问题)

http://download.csdn.net/download/qin1174586290/6364757

安装(使用root):

#tar xzfv zlib-1.2.8.tar.gz

#cd zlbi-1.2.8

#./configure --prefix=/usr/local/zlib

#make && make install

安装serf  yum install scons

6.安装 svn

# cd  subversion-1.9.4 

#./configure --prefix=/usr/local/svn1.9.4 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-sqlite=/usr/local/sqlite --with-zlib=/usr/local/zlib

#make && make install

7.设置环境

加入svn path

#vi /etc/profile

    在文件最后面添加

    PATH=/usr/local/svn1.9.4/bin:$PATH

    export path

    退出执行  

#  .  /etc/profile

8.测试 svnserve --version 

 安装成功返回:

svnserve,版本 1.9.4 (r1740329)

   编译于 Jun 22 2016,18:23:45 在 x86_64-unknown-linux-gnu

Copyright (C) 2016 The Apache Software Foundation.

This software consists of contributions made by many people;

see the NOTICE file for more information.

Subversion is open source software, see http://subversion.apache.org/

下列版本库后端(FS) 模块可用: 

* fs_fs : 模块与文本文件(FSFS)版本库一起工作。

* fs_x : Module for working with an experimental (FSX) repository.


9.svn仓库创建(仓库test)

#mkdir -p /var/svn/  

#cd /var/svn/   

#/var/svn/svnadmin create test 

#cd www/conf/  

#ll

10.版本库信息

项目配置: 

#vi svnserve.conf 

修改:去掉注释符  

anon-access = none  

auth-access = write 

password-db = passwd 

authzauthz-db = authz  

realm = test 

这里要注意:每一行的都要你顶头,不能有空格,不然会报错!

定义版本库访问权限: 

# vi authz  

添加: (svnuser为svn用户名,这里可以用用户组设置权限r:read w:wirte) 

[/]   

svnuser = rw  

设定用户密码: 

# vi passwd  

添加(用户名=密码): 

svnuser = 123456  

11:

最后给这个svn库使用默认端口3690启动命令:

#sudo svnserve -d  -r /var/svn/test 

使用8089端口:

#sudo svnserve -d --listen-port 8089 -r /var/svn/test

注意:后面启动系统后给这个svn库启动的时候就用此命令。 

查看是否启动成功

#sudo ps -ef | grep svnserve

查看端口

#sudo netstat -anp |grep svnserve

查看svn日志

#svn log svn://192.168.1.107 --username vsnuser --password 123456

12 安装服务

新建文件svnserve,内容如下:

#!/bin/bash  

#

# chkconfig: 2345 10 90  

### BEGIN INIT INFO

# Provides:          svnserve

# Required-Start:    $remote_fs $network

# Required-Stop:     $remote_fs $network

# Default-Start:     2 3 4 5

# Default-Stop:      0 1 6

# Short-Description: The svnserve Application Server

### END INIT INFO

# description: Starts and Stops the svnserve daemon.  

SVN_HOME=/usr/local/svn1.9.4

SVN_START=$SVN_HOME/bin/svnserve

SVN_ROOT=/var/svn/www

start(){  

echo "Starting svnserve: "  

${SVN_START} -d  -r $SVN_ROOT 

echo "svnserve start ok."

}  

stop(){  

echo "Shutting down svnserve: "  

killall -9 svnserve 

echo "svnserve stop ok." 

}  

restart(){  

stop  

sleep 5

start  

}  

status(){  

 netstat -anp |grep svnserve

 ps -ef | grep svnserve

}  

case "$1" in  

start)  

start ;;  

stop)  

stop ;;  

restart)  

restart;;  

status)  

status ;;  

*)  

echo "Usage: svnserve {start|stop|restart|status}"  

exit 1  

esac  

exit 0

把svnserve复制到/etc/init.d 下

设置权限

#cd /etc/init.d

#chmod 755 svnserve

启动:​

#service svnserve start​ 或 #./svnserve start

出现问题的话试着执行:

# systemctl start svnserve.service

# systemctl enable svnserve.service

#systemctl start  svnserve

#systemcltl status svnserve  

0 0