方法一、用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. windows下Redis编译安装

    redis是现在比较流行的noSQL,主流大型网站都用的比较多,很多同学不知道怎么安装,这里介绍在windows下面安装以及扩展,提供学习使用,实际使用环境多在Linux下. 首先到相应网站下载red ...

  2. Continue To DO!

    (1)Valid Anagram 解题思路: 使用一个数组,首先遍历S相应位置加1,然后遍历T,判断此时如果相应位置为零返回FALSE,否则就减一.T遍历完毕后返回true. 代码如下: public ...

  3. new String(“a”)与String a="a";

    String a=new String ("a"); String b=new String ("a"); //这是比较地址 System.out.printl ...

  4. Linux内核分析第三周学习总结:构造一个简单的Linux系统MenuOS

    韩玉琪 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一.Linux内 ...

  5. 国内外著名B2C系统介绍兼比较ASP.NET和PHP

    国内外著名B2C系统介绍兼比较ASP.NET和PHP   2010-06-08 11:44  来源:  我来投稿  我要评论    中介交易 SEO诊断淘宝客 站长团购 云主机 A5外包  国内外著名 ...

  6. POJ 1661 Help Jimmy LIS DP

    http://poj.org/problem?id=1661 对板按高度排序后. dp[i][0]表示现在站在第i块板上,向左跑了,的状态,记录下时间和其他信息. O(n^2)LIS: 唯一的麻烦就是 ...

  7. myeclipse中Web App Libraries无法自动识别lib下的jar包

    在项目目录下找到.object文件修改 <natures> <nature>org.eclipse.jem.workbench.JavaEMFNature</nature ...

  8. JAVA中implements的用法

    implements使用 interface Sport { void run(); void jump(); } class Athlete implements Sport { public vo ...

  9. phpexcel相关函数

    1.header [php] header("Content-Type:application/vnd.ms-excel"); header("Content-Dispo ...

  10. UIImageView、UISlider、UISwitch、UIStepper、UISegmentControl

    UIImageView——图像视图 作用:专门用来显示图片的控件 . 设置图像 [self.imageView setImage:[UIImage imageNamed:@"abc.png& ...