Svn服务器搭建

Posted hoiny-max

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Svn服务器搭建相关的知识,希望对你有一定的参考价值。

Centos

1.安装 & 测试

#安装 yum install subversion #测试是否安装成功,如果显示了版本信息则表示安装成功 svnserve --version

2.配置

自动配置可参考如下脚本

#!/bin/bash conf=/conf/svnserve.conf pw=/conf/passwd changeConf(){ sed -i ‘s# anon-access = readanon-accss = noneg‘ "$1"${conf} sed -i ‘s# auth-access = writeauth-accss = writeg‘ "$1"${conf} sed -i ‘s# password-db = passwdpassword-db = passwdg‘ "$1"${conf} } addUser(){ sed -i "s/# sally = sallyssecret/$2 = $3/g" "$1"${pw} } if [ $# -lt 1 ];then echo "Error param no.!" echo "Usage(Root needed): svn.sh create reponame OR svn.sh restart " exit fi if [ "$1" == "create" ]; then if [ -z "$2" ]; then echo "Error param" exit fi home=/home/ repo=${home}"$2" echo "creating repo" $repo svnadmin create $repo if [ $? -ne 0 ]; then echo create failed! exit; else read -p "inpute the username:" username read -p "inpute the password:" password changeConf $repo addUser $repo $username $password fi elif [ "$1" == "restart" ]; then if [ -z "$2" ]; then read -p "Listen on which ip:" ip fi pid=`ps -e | grep svnserve | awk ‘{print $1}‘` kill -9 $pid 2>/dev/null 1>&2 svnserve -d -r /home --listen-host $ip else echo "error param" fi

运行方式如下:

#创建demo仓库,然后输入用户名及密码 ./autorun.sh create demo #重启SVN服务,稍后输入监控的ip ./autorun.sh restart

Ubuntu

1.安装包

$ sudo apt-get install subversion

2.添加svn管理用户及subversion组

$ sudo adduser svnuser $ sudo addgroup subversion $ sudo addgroup svnuser subversion

3.创建项目目录

$ sudo mkdir /home/svn $ cd /home/svn $ sudo mkdir fitness $ sudo chown -R root:subversion fitness $ sudo chmod -R g+rws fitness

4.创建SVN文件仓库

$ sudo svnadmin create /home/svn/fitness

5.访问方式及项目导入:

$ svn co file:///home/svn/fitness 或者 $ svn co file://localhost/home/svn/fitness * 注意: 如果您并不确定主机的名称,您必须使用三个斜杠(///),而如果您指定了主机的名称,则您必须使用两个斜杠(//). //-- 下面的命令用于将项目导入到SVN 文件仓库: $ svn import -m "New import" /home/svn/fitness file:///home/svnuser/src/fitness 一定要注明导入信息

6.访问权限设置

修改 /home/svn/fitness目录下: svnserve.conf 、passwd 、authz三个文件,行最前端不允许有空格

编辑svnserve.conf文件,把如下两行取消注释 password-db = password authz-db = authz //补充说明 # [general] anon-access = read auth-access = write password-db = passwd 其中 anon-access 和 auth-access 分别为匿名和有权限用户的权限,默认给匿名用户只读的权限,但如果想拒绝匿 名用户的访问,只需把 read 改成 none 就能达到目的。 #编辑/home/svnuser/etc/passwd 如下: [users] mirze = 123456 test1 = 123456 test2 = 123456 #编辑/home/svnuser/etc/authz如下 [groups] admin = mirze,test1 test = test2 [/] @admin=rw *=r #这里设置了三个用户mirze,test1,test2密码都是123456 #其中mirze和test1属于admin组,有读和写的权限,test2属于test组只有读的权限

7.启动SVN服务

svnserve -d -r /home/svn 描述说明: -d 表示svnserver以“守护”进程模式运行 -r 指定文件系统的根位置(版本库的根目录),这样客户端不用输入全路径,就可以访问版本库 如: svn://192.168.12.118/fitness

这时SVN安装就完成了

以上是关于Svn服务器搭建的主要内容,如果未能解决你的问题,请参考以下文章

CentOS服务器下搭建SVN服务器

centos7下SVN服务器如何搭建

windows server怎么搭建svn服务器

linux(centos7)下SVN服务器如何搭建

怎么搭建本地SVN服务

阿里云CentOS搭建SVN服务器及权限管理