Php / Shell远程SVN tarball

时间:2010-06-02 01:59:16

标签: php svn shell

我想在我的主机上设置每日tarballs / zip档案以获取相关项目的SVN。我无法访问他们的服务器,但他们确实有一个可公开访问的SVN。如何通过Cron task + php / shell脚本获取此SVN并以最小负载(dreamhost共享)构建存档?

3 个答案:

答案 0 :(得分:0)

我想知道Hudson是否会有所帮助。我们将它用于我们的一些持续集成SVN和归档工作。

答案 1 :(得分:0)

您可以通过shell脚本执行svn checkout并对您检出的目录进行tar操作。请注意,结帐将包含.svn文件和元数据。

这个网站http://www.linuxweblog.com/blogs/sandip/20090331/svn-checkout-shell-script和man tar应该能让你获得最大的收益。

你也可以查看phing它就像蚂蚁,但用PHP构建,如果你可以结帐,你可以使用tar任务。

Phing

答案 2 :(得分:0)

我迷路了。你在寻找shell脚本吗?

#!/bin/sh

svn export http://svn.other-project.com/path/to/project /my/svn/path

tar -czf /my/tar/path/svn_project.tgz /my/svn/path

那就可以了。您需要填写要存储这些文件的任何路径。将文件存储在有用的位置,例如/usr/local/sbin/tarball_svn_project.sh

使用svn export意味着你的tar包中不会有.svn目录。

在Cron中,您可以添加如下所示的行:

15 1 * * * /bin/sh /usr/local/sbin/tarball_svn_project.sh

那将在每天凌晨1点15分运行shell脚本。您可以更改数字以控制脚本运行的时间。