当前位置:首页 > 技术分享

linux centos svn搭建及网站同步更新

admin6年前 (2020-08-14)技术分享3408

以前上线的项目都是用ftp来更新的.后来技术人员多了,ftp的弊端就出来了.所以在这里给大家介绍一下我们现在正在使用的svn同步修改更新的方案.

原理很简单主要是用到了svn的hooks功能.即本地提交到服务器的svn服务器.然后svn服务器调用hooks将服务器相应的svn目录更新.

全自动脚本:https://gitee.com/web/site_svn_update

一 搭建篇

yum install -y subversion

svnserve --version


二 创建项目仓库

mkdir /var/svn

cd /var/svn

svnadmin create /var/svn/[项目名]


三 配置项目仓库

cd /var/svn/[项目名]/conf

1.修改综合配置

vi svnserve.conf

//找到以下配置项,将前面的#号去掉,然后做相应的配置 [每一项前面不能有空格]

anon-access = none //匿名用户访问权限:无

auth-access = write //普通用户访问权限:读、写

password-db = passwd //密码文件

authz-db = authz //权限配置文件

realm = /var/svn/[项目名] //版本库所在


2.修改用户名及密码

vi passwd

[users]

testuser=123456


3.修改用户权限 r 读 w写

vi authz


[groups]

[/]

testuser= rw


四 服务启动重启

1.启动服务

svnserve -d -r /var/svn


2.重启服务

killall svnserve

svnserve -d -r /var/svn


五 应用


1.检出

svn co svn://localhost/[项目名] /data/[项目目录] --username '[用户名]' --password '[密码]'


提交

svn add *   //成功的话会显示  A index.php

svn commit * -m "update"


2.同步更新

cd /var/svn/[项目名]/hooks

vi post-commit


svn status --show-updates


#!/bin/sh

export LANG=en_US.utf8

SVN_PATH=/usr/bin/svn

WEB_PATH=/data/[项目目录]

$SVN_PATH update $WEB_PATH --username '[用户名]' --password '[密码]' --no-auth-cache


ZZ 保存并退出


3.权限

chown www:www post-commit

chmod 755 post-commit


4.检出

到客户端 


清除svn

 find . -type d -name ".svn"|xargs rm -rf


注:需要开通3690端口

扫描二维码推送至手机访问。

版权声明:本文由小刚刚技术博客发布,如需转载请注明出处。

本文链接:https://blog.bitefu.net/post/47.html

标签: svn
分享给朋友:

“linux centos svn搭建及网站同步更新” 的相关文章

IIS动态IP限制抵御CC攻击和网络爬虫IIS 8 IIS 7 Dynamic IP Address Restrictions

IIS动态IP限制抵御CC攻击和网络爬虫IIS 8 IIS 7 Dynamic IP Address Restrictions

IIS8新增了一个动态IP限制功能,可以限制同一IP的连接数和访问频率。IIS7则可以安装官方模块Dynamic IP Restrictions实现相同功能。IIS8启用方法默认情况下,IIS 8.0是没有安装“IP和域限制”模块的,我们需…

php-cgi占用太多cpu资源而导致服务器响应过慢 利用进程和Linux的proc 定位耗资源文件

php-cgi占用太多cpu资源而导致服务器响应过慢 利用进程和Linux的proc 定位耗资源文件

在此环境下,一般php-cgi运行是非常稳定的,但也遇到过php-cgi占用太多cpu资源而导致服务器响应过慢,我所遇到的php-cgi进程占用cpu资源过多的原因有: 1. 一些php的扩展与php版本兼容存在问题,实践证明 e…

mysql update不支持set子查询更新 的解决办法

mysql update不支持set子查询更新 的解决办法

先看示例:SELECT uin,account,password,create_user_uin_tree FROM sys_user结果:表中的create_user_uin_tree标识该条记录由谁创建。创…

php高效检测远程图片是否存在

php高效检测远程图片是否存在function img_exits($url){     $ch = curl_init();    &…

PHP AES加解密 (ECB模式/sha1prng算法/PKCS5Padding和PKCS7Padding补码) ECB 模式不需求设置 iv

php7+ 版本/**  * [AesSecurity aes加密,支持PHP7+]  * 算法模式:ECB  * 密钥长度:128  * 补…

微软Windows 10升级密钥(例如家庭版升级为企业版) 不能用于激活系统

微软Windows 10升级密钥(例如家庭版升级为企业版) 不能用于激活系统

下面的密钥,是微软官方提供的,仅能用于Windows10系统版本的升级,比如从家庭版升级为专业版、专业版升级为企业版等。升级密钥不能用于激活系统,激活需要KMS或者数字权利,由于涉及到版权问题,在此不宜分享,请大家自行查找激活相关的内容。准…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。