1、安装 SVN

1.1先检查是否有安装 svn

rpm -qa subversion      #没有什么显示就说明没有安装过
yum remove subversion #如果有安装就运行删除老版本
yum install subversion #运行安装SVN

1.2创建SVN版本库(这里我们直接部署到Tomcat/webapps下,如果没有可以自行部署一个Tomcat)

mkdir -p /usr/local/tomcat/webapps/svn

1.3创建版本库

svnadmin create /usr/local/tomcat/webapps/svn/svnTest

完成此处之后会在该目录下生成以下目录文件

1.4在版本库的 conf目录下配置文件

authz文件是权限控制文件

passwd是帐号密码文件

svnserve.conf SVN服务配置文件

1.5设置配置passwd 如:用户名=密码

[users]
test = test123

1.6配置authz文件,设置用户权限 rw是拥有读写权限(注:一定要顶格写):

[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
test = test [/]
test = rw [/adminfile]
@test= rw

1.7配置svnserve.conf ,打开以下注释就好了

anon-access = read #匿名用户可读
auth-access = write #授权用户可写
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz #使用哪个文件作为权限文件
realm =/usr/local/tomcat/webapps/svn/svntest #认证空间名,版本库所在目录

1.8启动SVN

svnserve -d -r /usr/local/tomcat/webapps/svn/

检查svn是否启动成功,查看进程

ps -ef |grep svnserve

检查防火墙

#添加(--permanent永久生效,没有此参数重启后失效)
firewall-cmd --zone=public --add-port=3690/tcp --permanent
#重新载入(svn默认3690端口)
firewall-cmd --reload
#查看
firewall-cmd --zone= public --query-port=3690/tcp
#或者之间关闭防火墙
systemctl stop firewalld.service

最好在检出

 svn co svn://ip/svnTest

回车之后会出现:

“root”密码:这里没有设置直接回车继续到
用户名:test
“test”的密码:test123 保存未加密的密码(yes/no):yes
最后提示:
取出版本:0

用户端链接:

svn://ip/svnTest

二、实现用户上传SVN服务自动更新(Web项目直接刷新页面更新)

在版本库中找到hooks文件,复制文件 post-commit.tmpl 并改名位 post-commit

cd /usr/local/toncat/webapps/svn/svnTset/hooks

cp post-commit.tmpl post-commit

将以下内容写进 post-commit 文件中

#!/bin/sh
export LANG="zh_CN.UTF-8"
REPOS="$1"
REV="$2"
SVN_PATH=/usr/bin/svn
WEB_PATH=/usr/local/tomcat/webapps/svnTest/
$SVN_PATH update $WEB_PATH --username test--password test123--no-auth-cache

保存之后给 post-commit 执行权限

chmod -x post-commit 

到这来就已经实现了自动更新,就到网页通过tomcat访问到版本库中最新的项目了

CentOS 7 环境下部署 SVN 并实现自动更新(版本库放在Tomcat下)的更多相关文章

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

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

  2. SVN+post-commit 搭建自动同步版本库

    一.需求. 本地文件上传到测试环境svn,测试环境同步到生产环境rsync.开发环境与测试环境与生产环境分离. 二.搭建SVN服务器. yum -y install subversion && ...

  3. SVN跨服务器自动更新--实现文件分发

    目标:SVN版本库提交,服务器中的工作拷贝能自动update. 实现方法:subversion, curl,php脚本实现,并且入mysql库来进行管理.改hosts文件来进行访问!提交触发钩子脚本时 ...

  4. 【转】SVN管理多个项目版本库

    转载地址:http://blog.163.com/zhangxuemin_zy/blog/static/10178565520115704031799/ SVN管理多个项目版本库:   安装SVN服务 ...

  5. SVN管理多个项目版本库 (windows,linux 通用)

    SVN管理多个项目版本库: . 安装SVN服务器软件,路径: C:\Program Files\Subversion . 在D盘创建svn根目录D:\SVN-CM . 在D:\SVN-CM下创建SVN ...

  6. spring boot不要放在tomcat下启动,因为自身就带了集成tomcat

    spring boot不要放在tomcat下启动,因为自身就带了集成tomcat

  7. 解决Intellij Idea下修改jsp页面不自动更新

    解决Intellij Idea下修改jsp页面不自动更新 On frame deactivation:被设置成了Do nothing 解决办法:改为Update resources(更新资源)或者Up ...

  8. Linux环境下部署svn服务详解

    说明 环境: 操作系统:centos 8.0 IP:39.100.228.13 安装 用ROOT账号登录,在控制台执行以下命令,一直默认安装就好可以了. [root@localhost ~]#yum ...

  9. CentOS6.5下部署SVN

    查看系统版本,安装SVN软件及创建目录 [root@A-linux ~]# uname -r 2.6.32-431.el6.x86_64 [root@A-linux ~]# cat /etc/redh ...

随机推荐

  1. 一个时序图描述从用户在浏览器地址栏输入url并按回车,到浏览器显示相关内容的各个过程

    其实考察的就是一次HTTP请求所经过的过程和Spring或者SpringMVC怎么调用dispatcherServlet的过程

  2. HBase调优案例(一)——建表长时间等待最后失败

    现象: 1.在HBase Shell里执行建表操作会等很久,最终失败: 2.通过代码侧进行建表同样不能成功. 原因排查: 1.查询HMaster日志,发现有接收到建表(create)的RPC请求:   ...

  3. 快速排序和二分查找(Go)

    package main import ( "fmt" "sync") var waitGroup sync.WaitGroup func main() { d ...

  4. linux grep 正则

    grep : 显示匹配行 -v: 反显示 -e 使用扩展正则表达式 黑色字体表明是原生正则表达式 红色字体表明是扩张正则表达式 1.匹配操作符 \: 转义字符串(正则使用扩展字符操作  没有使用-e ...

  5. @清晰掉 spi协议及工作原理分析

    说明.文章摘自:SPI协议及其工作原理浅析 http://bbs.chinaunix.net/thread-1916003-1-1.html 一.概述. SPI, Serial Perripheral ...

  6. 一、基础篇--1.1Java基础-int 和 Integer 有什么区别,Integer的值缓存范围

    int和Integer的区别 int是基本数据类型,Integer是int的包装类. Integer必须实例化后才能使用,int变量不需要. Integer实际是对象的引用,生成一个新对象实际上是生成 ...

  7. ASP.NET对路径"C:/......."的访问被拒绝 解决方法小结 [转载]

    问题: 异常详细信息: System.UnauthorizedAccessException: 对路径“C:/Supermarket/output.pdf”的访问被拒绝. 解决方法: 一.在IIS中的 ...

  8. PC、APP、H5三端测试的相同与不同

    随着手机应用的不断状态,同一款产品的移动端应用市场占相较PC端也越来越大,那么app与PC端针对这些产品的测试有什么相同与不同之处呢?笔者总结如下: 首先谈一谈相同之处... 一,针对同一个系统功能的 ...

  9. Android Jenkins自动打包纪录

    关于Jenkins自动打包Android的apk包,网上官方的太多,这里简单纪录一下博主的经历和打包的参数纪录 (本篇文章需要对Jenkins有最基本的基础了解) 博主所在公司曾负责app测试过程中发 ...

  10. paramiko远程连接linux服务器进行上传下载文件

    花了不少时间来研究paramiko中sftpclient的文件传输,一顿操作猛如虎,最后就一直卡在了路径报错问题,疯狂查阅资料借鉴大佬们的心得,还是搞不好,睡了个午觉醒来,仔细一看原来是指定路径的文件 ...