1.安装命令

yum -y install subversion

查看SVN安装位置

rpm -ql subversion

查看SVN版本

svnserve --version

2.创建版本库根目录(此仅为目录,为后面创建版本库提供存放位置)

mkdir /home/svn

3.创建SVN版本库(创建项目)

svnadmin create /home/svn/project1
svnadmin create /home/svn/project2

创建成功后,进入project1目录下

cd /home/svn/project1

进入目录,可以看见如下文件信息:

创建版本库公共配置文件存放目录,随便打开一个项目版本库复制一份conf目录(即:/home/svn/project1/conf)到 /home/svn 目录下

cp -r /home/svn/project1/conf /home/svn/conf

清空刚才创建的项目版本库conf目录,删除库的所有配置文件

rm -f /home/svn/project1/conf/*
rm -f /home/svn/project2/conf/*

4.修改配置

进入conf目录

cd /home/svn/conf

conf目录下,一共存放三份重要的配置文件,如下:

authz:负责账号权限的管理,控制账号是否读写权限

passwd:负责账号和密码的用户名单管理

svnserve.conf:svn服务器配置文件

编辑 authz 文件

@group1 = rw 中的"rw"意思是[groups]下定义的用户对指定的版本库有读写权限

编辑 passwd 文件

编辑 svnserve.conf 文件(注意:配置的前面不能有空格,一定要顶格写)

#配置匿名用户不可读(none匿名用户不可读写)
anon-access = none
#授权用户可写
auth-access = write
#使用哪个文件作为账号文件
password-db = ../../conf/passwd
#使用哪个文件作为权限文件
authz-db = ../../conf/authz
#认证空间名,版本库所在目录,该文件只为了后面方便复制到每个项目下的conf目录下,每个项目下的svnserv.conf中需要指明当前项目的目录
realm = /home/svn(后面单个项目中的svnserve.conf就需要设置如:realm = /home/svn/project1)

复制 svnserve.conf 配置文件到刚创建的所有项目版本库的conf目录下

cp -f /home/svn/conf/svnserve.conf /home/svn/project1/conf/svnserve.conf
cp -f /home/svn/conf/svnserve.conf /home/svn/project2/conf/svnserve.conf

修改/home/svn/project1/conf/svnserve.conf

realm = /home/svn/project1

修改/home/svn/project2/conf/svnserve.conf

realm = /home/svn/project2

注意:当SVN服务启动时/home/svn/conf下的svnserve.conf文件并不会被版本库载入,而真正被载入的配置是相对每个project/conf里的svnserve.conf文件,所以只是备份在当前目录下为了以后添加项目时方便复制到新的project/conf里,但是所有项目版本库conf目录下的svnserve.conf文件中“realm”都是不一样的!当然每个project/conf里的svnserve.conf文件都复制好并设置好“realm”后,/home/svn/conf下的svnserve.conf文件也可以被删掉。

5.自行配置好防火墙(默认3690端口)

云服务器配置好安全组

CentOS7放开端口

firewall-cmd --permanent --add-port=/tcp

firewall-cmd --reload

6.启动SVN服务器(注意:如果在一台服务器上同时启动多个版本管理,那么启动路径必须是所有项目仓库的根路径)

svnserve -d -r /home/svn

也可再设置别的端口(默认端口3690)

svnserve --listen-port  -d -r /home/svn

查看端口是否开启

netstat -ntlp

查看进程号

ps -A | grep svn

关闭进程号

kill 进程号

查看SVN启动结果

ps -ef | grep svnserve

7.访问SVN服务器

Windows系统

svn://ip地址/project1

Linux系统

svn co svn://ip地址/project1

其他命令

//查看目录列表
svn list --username 账号 [版本库目录] //查看文件详细信息
svn info --username 账号 [版本库目录] //查看日志
svn log --username 账号 [版本库目录] //检出版本库
svn checkout --username 账号 svn://ip地址/[目录] [目标目录] //更新版本库
svn update [版本库目录]

8.配置使用systemctl管理SVN(CentOS7)

创建/etc/systemd/system/svn.service文件

vi /etc/systemd/system/svn.service

并写入内容

[Unit]
Description=Subversion Server
[Service]
Type=forking
ExecStart=/usr/bin/svnserve --daemon --root /home/svn
ExecStop=/usr/bin/killall svnserve
Restart=always
[Install]
WantedBy=default.target

其中,“/home/svn”是SVN仓库的根路径,请根据情况修改。

通知systemd有个新服务添加

systemctl daemon-reload

启动和停止SVN服务

systemctl start svn.service
systemctl stop svn.service

配置开机自动启动

systemctl enable svn.service

检查SVN服务运作状态

systemctl status svn.service

查看是否开机启动

systemctl is-enabled svn.service

Linux(CentOS)搭建SVN服务器的更多相关文章

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

    虽然在windows上搭建SVN很简单,但是效能却不高,这当然是和linux相比了.然而在linux上搭建SVN却非常繁琐,所以今天这篇文章就来一步一步教您如何在Centos上搭建SVN 安装#yum ...

  2. 使用Linux(CentOS)搭建SVN服务器全攻略

    虽然在windows上搭建SVN很简单,但是效能却不高,这当然是和linux相比了.然而在linux上搭建SVN却非常繁琐,所以今天这篇文章就来一步一步教您如何在Centos上搭建SVN 安装 #yu ...

  3. [记录]CentOS搭建SVN服务器(主从同步)

    CentOS搭建SVN服务器(主从同步)1.安装步骤如下: 1)安装: #yum install subversion 2)查看安装位置: #rpm -ql subversion 3)查看版本: #/ ...

  4. Linux下搭建SVN服务器及自动更新项目文件到web目录(www)的方法

    首先搭建SVN服务器 1,安装SVN服务端 直接用apt-get或yum安装subversion即可(当然也可以自己去官方下载安装) sudo apt-get install subversion   ...

  5. CentOS搭建SVN服务器,并通过Apache HTTP方式访问

    摘要:本文主要讲述了在centos 6.5环境下搭建svn服务器,可通过svn:\\IP方式访问.同时由于部分公司内网端口限制,并不能访问外网的svn服务器,所以特地结合了apache服务器,使得可以 ...

  6. 【svn】Centos搭建svn服务器环境

    1.需求描述 在Centos系统中搭建svn服务器环境 2.搭建过程 2.1 yum安装svn [root@localhost /]# yum install svn  2.2 新建目录存储svn目录 ...

  7. centos搭建svn 服务器 并同步到web 目录(总结)

    配置搭建步骤: Linux平台的SVN服务器的配置及搭建 从本地提交代码到svn代码库. 将代码库中代码同步到web目录: 1.在web目录中checkout版本库 进入/home/www目录下  ( ...

  8. CentOS 搭建 SVN 服务器 及使用教程

    服务器与客户端 1.搭建SVN服务器 ① CentOS安装SVN 命令: yum -y install subversion 检查是否安装成功 命令: svn --version 如果显示如下内容说明 ...

  9. centos搭建svn服务器

    1.在centos6.5上面搭建svn服务器,安装svn服务器:yum install subversion 2.在任意目录下创建仓库目录,这里放在/data/mypros目录下 3.执行命令:svn ...

随机推荐

  1. Java 常用对象-基本类型的封装类

    2017-11-04 20:39:26 基本类型封装类:基本类型的封装类的好处是可以在对象中定义更多的功能方法操作该数据. 常用操作之一:用于基本数据类型与字符串的转换. 基本类型和包装类的对应: b ...

  2. ViewPager 如何得到当前的Fragment (使用FragmentPagerAdapter)

    使用FragmentPagerAdapter时,难免要在MainActivity 和 当前显示的Fragment间传递数据.但是FragmentPagerAdapter并没有给我们提供类似getCur ...

  3. 求逆序数的方法--线段树法&归并排序法

    逆序数的概念:对于n个不同的元素,先规定各元素之间有一个标准次序(例如n个 不同的自然数,可规定从小到大为标准次序),于是在这n个元素的任一排列中,当某两个元素的先后次序与标准次序不同时,就说有1个逆 ...

  4. Confluence 6 目录序列将会影响

    这个部分将会对用户目录序列对登录和权限以及更新用户和用户组的影响进行描述. 登录 用户目录的排序在用户登录系统中的影响是非常重要的,尤其对一个相同用户名的用户在多个目录中存在的情况.当用户在系统中进行 ...

  5. week 1

    day1 订正 学习AC自动机 day2 mobius反演 对偶图 codeforces day3 ZR模拟赛 订正 day4 复习AC自动机 题库 https://www.cnblogs.com/c ...

  6. Prime Gift CodeForces - 912E (中途相遇)

    链接 大意:求素因子只含给定素数的第k大数 先二分答案转为判定x是第几大, 然后分两块合并即可, 按奇偶分块可以优化一下常数 #include <iostream> #include &l ...

  7. python-day17--迭代器

    1.迭代: 迭代就是一个一个一个挨着的取值 2.可迭代类型:  str ,列表,元组,集合,字典 3.判断迭代器和可迭代的方法 #第一种:判断内部是不是实现了 __next__#'__next__' ...

  8. asp.net GridView多行表头的实现,合并表头

    protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == Da ...

  9. python读写csv时中文乱码问题解决办法

    https://www.cnblogs.com/shengulong/p/7097869.html 参考1 参考2 参考3 CSV是英文Comma Separate Values(逗号分隔值)的缩写, ...

  10. PHP:第四章——PHP数组array_diff计算数组差集

    <pre> <?php header("Content-Type:text/html;charset=utf-8"); /*知识点一:array_diff — 计 ...