centos7安装svn1.8.16

svn下载地址:http://subversion.apache.org/download/

svn要依赖一些包,可以提前装好

yum -y install apr-util apr-util-devel
yum -y install sqlite sqlite-devel

还要依赖openssl和zlib,可以参考http://www.cnblogs.com/ystq/articles/5919114.html

解压后,进入svn主目录

./configure --prefix=/usr/local/svn --with-openssl=/usr/local/openssl --with-zlib=/usr/local/lib/zlib --without-berkeley-db
make && make install

查看是否安装成功

/usr/local/svn/bin/svnserve --version

vi /etc/profile加入环境变量
export PATH=$PATH:/usr/local/svn/bin/
source /etc/profile

svn建库

1建立SVN的根目录
mkdir -p /opt/svn/

2建立一个产品仓库
mkdir -p /opt/svn/tshop/
svnadmin create /opt/svn/tshop/

3修改版本配置库文件
cd /opt/svn/tshop/conf
vi svnserve.conf
#主要修改以下四处
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = tshop

4设置账号密码
vi passwd
[users]
# harry = harryssecret
# sally = sallyssecret
account1=123456
account2=123456


5设置权限
vi authz
[groups]
team=test1,test2
[repo:/]
@ream=rw
#把test1和test2用户加入这个团队,本团队的人对此版本库有读(read)和写(write)的权限。[repo:/]设置权限起作用的区域是在版本库的根目录下

6启动svn服务
#可以建立启动svn的用户
useradd svn
chown -R svn:svn /opt/svn
#方式一:svnserve -d -r /opt/svn/ #默认的启动端口号为3690
#方式二:su – svn -c “svnserve -d –listen-port 9999 -r /opt/svn/”
#su – svn表示以用户svn的身份启动svn;
#-d表示以daemon方式(后台运行)运行;
#–listen-port 9999表示使用9999端口,可以换成你需要的端口。但注意,使用1024以下的端口需要root权限;
#-r /opt/svn 指定根目录是/opt/svn。
#如果有防火墙,要加端口到防火墙
7检查是否启动
netstat -tunlp | grep svn
如果显示以下信息说明启动成功
tcp 0 0 0.0.0.0:9999 0.0.0.0:* LISTEN 10973/svnserve

8将svn加入到开机启动
编辑rc.local文件:vi /etc/rc.d/rc.local
加入如下启动命令:
/usr/local/svn/bin/svnserve -d –listen-port 9999 -r /opt/svn

9如果想停止svn,则使用如下命令:
killall svnserve

10如果想将svn作为服务:
在/etc/rc.d/init.d/目录下新建名为svn的文件
编辑svn文件:vi /etc/rc.d/init.d/svnd, 在里面添加如下代码:
#!/bin/bash
# build this file in /etc/rc.d/init.d/svn
# chmod 755 /etc/rc.d/init.d/svn
# centos下可以用如下命令管理svn: service svn start(restart/stop)
SVN_HOME=/opt/svn
if [ ! -f "/usr/local/svn/bin/svnserve" ]
then
    echo "svnserver startup: cannot start"
    exit
fi
case "$1" in
    start)
        echo "Starting svnserve..."
        /usr/local/svn/bin/svnserve -d --listen-port 9999 -r $SVN_HOME
        echo "Finished!"
        ;;
    stop)
        echo "Stoping svnserve..."
        killall svnserve
        echo "Finished!"
        ;;
    restart)
        $0 stop
        $0 start
        ;;
    *)
        echo "Usage: svn { start | stop | restart } "
        exit 1
esac

 

posted @ 2016-10-25 17:42  用手踢球  阅读(2120)  评论(0编辑  收藏  举报