1、安装SVN服务
[root@bogon ~]# yum -y install subversion

2、查看svnserve安装目录
[root@bogon ~]# whereis svnserve
svnserve: /usr/bin/svnserve /usr/share/man/man8/svnserve.8.gz

3、查看是否安装成功,如果出现以下提示则安装成功
[root@bogon ~]# svnserve -h
usage: svnserve [-d | -i | -t | -X] [options]

Valid options:
-d [--daemon] : daemon mode
-i [--inetd] : inetd mode
-t [--tunnel] : tunnel mode
-X [--listen-once] : listen-once mode (useful for debugging)
-r [--root] ARG : root of directory to serve
-R [--read-only] : force read only, overriding repository config file
--config-file ARG : read configuration from file ARG
--listen-port ARG : listen port
....

4、创建版本库
[root@bogon /]# vi /etc/sysconfig/svnserve
# OPTIONS is used to pass command-line arguments to svnserve.
#
# Specify the repository location in -r parameter:
OPTIONS="-r /var/svn"    #默认版本库位置

  4.1)[root@bogon /]# mkdir /var/svn    #可自定义目录
  4.2)[root@bogon /]# svnadmin create /var/svn/ushark.net

5、配置
  5.1)新增用户
    [root@bogon /]# vi /var/svn/ushark.net/conf/passwd
    [users]
    # harry = harryssecret
    # sally = sallyssecret
    #
    ushark = www.ushark.net       #用户名=用户密码
  5.2)编辑用户权限
    [root@bogon /]# vi /var/svn/ushark.net/conf/authz
    [/]
    ushark = rw                        #授予ushark用户对根目录的读写权限,也可指定子目录
  5.3)编辑svnserve.conf
    [root@bogon /]# vi /var/svn/ushark.net/conf/svnserve.conf
    anon-access = none         #控制非鉴权用户访问版本库的权限
    auth-access = write           #控制鉴权用户访问版本库的权限
    password-db = passwd     #指定用户名口令文件名
    authz-db = authz              #指定权限配置文件名
    realm = ushark.net           #指定版本库的认证域,即在登录时提示的认证域名称
    !!! 以上五项不仅要去掉前面的#号,而且还要删除前面的空格,不然会报 “xxxxx: Option expected”错误 !!!

6、启动SVN
[root@bogon /]# systemctl start svnserve.service

7、设置开机自启
[root@bogon /]# systemctl enable svnserve

8、查看SVN端口,并设置防火墙开放其端口
[root@bogon /]# ss -tnlp | grep svnserve
LISTEN 0 7 *:3690 *:* users:(("svnserve",pid=1869,fd=3))
[root@bogon /]# firewall-cmd --permanent --add-service=telnet
[root@bogon /]# firewall-cmd --permanent --add-port=3690/tcp
[root@bogon /]# firewall-cmd --reload

9、解决SVN报“xxxxx: permission denied”错误
[root@bogon /]# systemctl stop svnserve.service
[root@bogon /]# killall svnserve
[root@bogon /]# svnserve -d -r /var/svn/     #以root用户运行

10、在win10下载安装TortoiseSVN
checkout时填写的url: svn://www.ushark.net/ushark.net              #svn://your/server/addr/版本库名
认证用户名:ushark
认证密码:www.ushark.net

11、提交代码自动同步到WEB服务目录
[root@bogon html]# cp /var/svn/ushark.net/hooks/post-commit.tmpl /var/svn/ushark.net/hooks/post-commit
[root@bogon html]# vi /var/svn/ushark.net/hooks/post-commit
!!!把文件里所有行注释掉,添加如下关键代码:!!!
cd /LNMP/nginx/html
svn co file:///var/svn/ushark.net/ #checkout本地svn版本库, 如果WEB服务与SVN服务不在同一主机,则用http://svn/url/svn_name
svn cleanup
svn up /LNMP/nginx/html/ushark.net/ --username ushark --password 123456 --no-auth-cache

Centos7下搭建SVN服务,本地提交代码自动同步到WEB目录的更多相关文章

  1. CentOS7下安装SVN服务端

    CentOS7下安装SVN服务 1. yum命令即可方便的完成安装# sudo yum install subversion 测试安装是否成功:# svnserve --version 更改svn的默 ...

  2. CentOS 创建SVN 服务器,并且自动同步到WEB 目录

    CentOS 创建SVN 服务器,并且自动同步到WEB 目录 标签: centossvnsubversion服务器 2013-12-06 10:09 5492人阅读 评论(0) 收藏 举报  分类: ...

  3. 如何在linux下搭建svn服务

    • 安装svn 使用命令 yum install subversion 如果提示上述错误,请以管理员身份运行 使用命令su root 再执行 yum install subversion 2,查看sv ...

  4. 【LINUX】SVN 代码提交之后。同步到web目录下

    1  当你使用svn在成功提交一个新版本的时候,svn仓库目录下的hook文件夹下的post-commit脚本会运行 用shell写一个脚本,在提交完版本后,自动在web目录运行一下svn updat ...

  5. svn提交自动同步到web目录

    环境:CentOS6.5  测试线   svn和web服务器在同一台机器上   SVN版本1.6 情景:在测试环境下,开发部提出希望提交到SVN的代码能自动同步到WEB站点目录下,解决每次都要传双份这 ...

  6. Linux下搭建svn服务端

    安装 使用yum安装非常简单: yum -y install subversion (压缩包安装比这麻烦的多) Tortoise本是window下客户端工具,但也可以建仓库,作为服务端.Linux只有 ...

  7. LNMP环境下搭建SVN服务

    最近自己买了个服务器,试着在上面搭建了LNMP环境,因为以前在本地用MAMP Pro搭建过LAMP环境,所以基本上还算是轻车熟路,第一次搭建LNMP,使用的是一键安装,过程是顺利的,后来在使用过程中遇 ...

  8. CentOS7下搭建SVN服务器

    (1).安装SVN 1)安装SVN [root@youxi1 ~]# yum -y install subversion mod_dav_svn [root@youxi1 ~]# cat /etc/s ...

  9. windows下搭建svn服务端、客户端

    1.安装SVN服务器subversion以及客户端TortoiseSVN,在网上下载windows版的subversion,TortoiseSVN并安装,比如我的服务端安装在了D:\Program F ...

随机推荐

  1. Spark基础脚本入门实践2:基础开发

    1.最基本的Map用法 val data = Array(1, 2, 3, 4, 5)val distData = sc.parallelize(data)val result = distData. ...

  2. app测试自动化之定位元素

    app中元素定位是通过uiautomatorviewer来查看,这个是android sdk中自带的一个工具,可以在sdk家目录的tools下找到: 双击打开之后,点击第二个按钮即可把手机当前界面的元 ...

  3. docker容器中Postgresql 数据库备份

    查看运行的容器: docker ps 进入目标容器: docker exec -u root -it 容器名 /bin/bash docker 中,以root用户,创建备份目录,直接执行如下命令, p ...

  4. Gradle 大杂烩

    1. 什么是Gradle Gradle是一个项目构建工具,目前支持Java.Groovy.Kotlin.Scala.构建脚本使用Groovy或Kotlin,目前一般用Groovy. 2. Gradle ...

  5. mysql更新表中日期字段时间

    DATE_ADD和DATE_SUB函数可以用INTERVAL关键字标识的时间间隔进行加减操作,类似于PHP中的strtotime函数. 1.更新表中有效期valid_time字段值都增加一天 UPDA ...

  6. Python机器学习笔记:深入学习Keras中Sequential模型及方法

    Sequential 序贯模型 序贯模型是函数式模型的简略版,为最简单的线性.从头到尾的结构顺序,不分叉,是多个网络层的线性堆叠. Keras实现了很多层,包括core核心层,Convolution卷 ...

  7. MySQL实验准备(二)--Python模拟数据(MySQL数据库)

    Python模拟数据(MySQL数据库) 数据模拟 目的:模拟多个表的插入和查询数据的模拟,再通过基准测试脚本测试服务器性能和收集数据,仿真模拟. 备注: 如果需要基础的python环境,可以查看&l ...

  8. C++ QT中自定义控件的简单创建

    为了给控件添加自定义的方法以及重绘控件,我们需要自定义控件来达到自己希望的结果,网上的自定义控件文章比较少,并且过程比较粗略. 此教程以中文版的QT Creator进行介绍 首先我们创建一个新的项目, ...

  9. webpack打包去除map文件及其他一些配置

    一.vue-cli(3.x)搭建的项目,webpack(3.x)打包时,生成的map文件很大,目前又不知道是干嘛用的,所以就直接去掉了. 方法: 修改sourceMap配置成为false. 1:在bu ...

  10. c# 封装Dapper操作类

    using Dapper; using DapperExtensions; using System.Collections.Generic; using System.Configuration; ...