自动更新svn的内容到网站

每次编写网站代码,都是手工复制到服务器然后看效果,现在可以通过svn自动更新网站的代码,方法如下:

1、编写批处理

"C:\Program Files\Subversion\bin\svn.exe" export --force --no-auth-cache --quiet svn://xxxxxx [path] --username [username] --password [password]

相关参数说明:

1、C:\Program Files\Subversion\bin\svn.exe,svn程序路径

2、export,导出命令

3、--force,覆盖原来的文件,如果原来存在相同的文件,则会覆盖,否则会出错

4、--no-auth-cache,不缓存认证,这个必须要写,不然你在php网站调用,会出现一个提示,但你看不到控制台窗口,程序就会一直卡在那里不退出,加上这个参数就不会缓存认证信息,就不会出错了

5、--quiet,运行后退出

6、svn://xxxxxx,需要导出的svn路径

7、[path],导出到本地的路径,指定为网站的目录即可

8、--username [username],svn的账号

9、--password [password],svn的密码

 

2、通过以上批处理,就可以将指定的svn路径导出到本地指定的目录,完成网站更新,然后设置svn hooks,就可以在提交代码后,自动执行以上批处理了。

在svn版本库的目录hooks下,找到post-commit.tmpl文件,重命名为:post-commit.bat,注释掉: mailer.py commit "$REPOS" "$REV" /path/to/mailer.conf

输入上面批处理名称就行,也可以直接将上面的批处理命令输入进去都可以。

如果你的代码库和网站不在同一个服务器,也可以在网站服务器,创建一个网站页面,用来执行上面的批处理里,然后在

post-commit.bat调用这个网页,也可以实现两台服务器自动更新代码的功能。

在批处理调用网站的方法:

示例如下:

start http://www.xxxx.com/update.php

 

posted on 2014-12-07 22:00  icycity  阅读(343)  评论(0编辑  收藏  举报

导航