方法一、用shell脚本定时更新项目
 
1、进入网站的根目录,假设项目位置放在/var/www/test
cd /var/www/test
 
2、建立脚本文件update.sh,分两步进行.首先利用touch命令创建,之后使用vim进行编辑.
touch update.sh
vim update.sh
 
输入以下内容
 
#!/bin/sh
while true
do
svn update --username 你的svn用户名 --password 你的svn密码
sleep 60
done
 
这里我设置的是sleep 60,即每隔60秒更新一次,数值大小可随个人需求而定.不建议间隔时间太短.
 
在后台执行这段脚本
nohup ./update.sh
 
会产生一个nohup.out记录更新信息。或用
nohup ./update.sh > update.out
 
这种定时更新方法还不够,因为如果服务器重启的话就没了,我们可以把它写到启动项里边
vim /etc/rc.local
 
添加
nohup /var/www/shop/update.out > /var/www/shop/update.out
 
方法二、用linux计划任务,这种方式很简单。
 
crontab -e
 
或者vim /etc/crontab
 
或者vim /var/spool/cron/root
 
在新的一行中添加
 
*/1 * * * * username /usr/bin/svn update /var/www/shop --username dxk --password 123465--no-auth-cache > /var/www/shop/update.log
 
这里每隔1分钟更新一次,并把记录写到update.log中
 
重启服务
service crond restart
这里主要是使用的定时方式来更新svn项目,用于本地局域网服务器还是可以接受的,但是用于万维网服务器就有点得不偿失了。
另一种办法就是利用post-commit钩子的方法,在每一次用户提交的时候,服务器上自动同步完成更新动作,减小了服务器压力。
 
方法三、post-commit钩子
 
svn 项目中的 hooks 文件中的 post-commit(该文件夹下有 tmp文件 去除后缀即可)
post-commit
#!/bin/sh
export LANG=zh_CN.GBK #svn 编码是GBK
export LANG=en_US.UTF-8 #svn 编码是UTF-8
svn up --username=test --password=test --no-auth-cache --non-interactive /var/www/test
 
(橙色部分根据自己的信息填写)
 
设置过程中需要注意到的主要有两点:
 
1.svn的编码 
2.post-commit 权限 设置成 777

linux下svn定时更新项目的更多相关文章

  1. Linux 下 svn 多个项目多用户分配

    安装步骤如下: 1.yum install subversion 2.输入rpm -ql subversion查看安装位置,如下图: 输入 svn –help可以查看svn的使用方法 需求 开发服务器 ...

  2. linux 下svn同步更新钩子

    svn服务器搭建:https://www.linuxidc.com/Linux/2017-05/144254.htm SVN版本库中的一个项目:/svn/repositories/test/ 网站目录 ...

  3. Linux 下SVN自动更新

    1.找到svn的所在目录: 我的目录在/usr/local/svn/myproject 2.新建post-commit vim hooks/post-commit #!/bin/shexport LA ...

  4. Linux下SVN创建新的项目

    Linux下SVN创建新的项目   Linux环境下的SVN创建新的项目 一.前置条件: 1)有安装了linux系统的服务器,123.*.*.29 2)服务器上安装了svn,本人服务器的svn的数据安 ...

  5. linux下svn命令使用大全

    最近经常使用svn进行代码管理,这些命令老是记不住,得经常上网查,终于找了一个linux下svn命令使用大全:1.将文件checkout到本地目录 svn checkout path(path是服务器 ...

  6. Linux下SVN服务器安装配置及客户端安装说明

    原文地址:http://wenku.baidu.com/link?url=h3dVAMx4azpOXEND5HQEE6nliE8-zc0GSQ03yv4cUs1vXMALXF64UsK7kT7kXm_ ...

  7. Linux下SVN的一些使用方法总结

    Linux下SVN的一些使用方法总结   近期的一个项目不方便 Check 到本地,需要在测试服务器上进行编写和测试,所以就研究了一下如何在 Linux 命令行下使用 SVN. 首先 svn help ...

  8. [转载]linux下svn命令使用大全

    原文地址:http://blog.chinaunix.net/uid-22150747-id-189264.html 最近经常使用svn进行代码管理,这些命令老是记不住,得经常上网查,终于找了一个li ...

  9. linux下svn 搭建

    linux 下SVN搭建加自动提交更新到指定目录一.安装#yum install subversion       yum安装SVN#mkdir -p /opt/svn/repos       创建s ...

随机推荐

  1. java中Thread的 interrupt异常处理

    http://blog.csdn.net/srzhz/article/details/6804756

  2. XidianOJ 1112 Too stupid

    题目描述 某天 light由于太富而且太帅遭到了歹徒的袭击,现在他遇到了n个歹徒,准备对light施行不法行为,虽然light身体强壮,但是毕竟只有一个人肯定打不过那么多歹徒,但是高智商的light觉 ...

  3. c++学习笔记——构造函数

    构造函数定义:每个类都分别定义了它的对象被初始化的方式,类通过一个或几个特殊的成员函数来控制其对象的初始化过程,这些函数叫做构造函数. 需要注意的几点: 1:构造函数不能被声明为const的,当我们创 ...

  4. Erlang 从入门到精通(一) 下载安装

    我的电脑配置: 系统:win8.1  x64 内存:16G 在官网下载http://www.erlang.org/

  5. 利用Maven建立java web项目

    方法一:在IntelliJ IDEA中创建maven web项目 一.在新建项目对话框中,选择“Maven”类型,设置好jdk,勾选“create from archetype”,在列表中选择“mav ...

  6. android中5大布局

    Android布局也可以用HTML5做,但是用户体验性差 Android布局里XML的属性配置 1. 五种Layout中Item的基础属性: layout_width & layout_hei ...

  7. 技术英文单词贴--G

    G generator 发电机,发生器,生产者

  8. C++主要数据类型在计算机中所占字节大小

    遇到了数据存储的大端和小端问题,这你妹的看的一头雾水,发现我基本知识严重匮乏啊,先了解C++各数据类型在自己机子上占多少字节吧,以及这些数据类型所占字节大小与神马有关.各种查资料然后写代码检验,小结于 ...

  9. hdu 5666 (大数乘法) Segment

    题目:这里 题意:在线段x+y=q与坐标轴围成的三角形中,求有多少个坐标为整数的点,答案模上p. 很容易就想到最后答案就是((q-1)*(q-2))/2然后模上p就是了,但是这个数字比较大,相乘会爆l ...

  10. Java中的转义字符

    1.转义字符 1.八进制转义序列:\ + 1到3位5数字:范围'\000'~'\377' \0:空字符     2.Unicode转义字符:\u + 四个十六进制数字:0~65535       \u ...