是否有任何系统可以检查网站的更改并自动更新网站。
该网站始终有效地运行最新的稳定版本,而无需将文件 ftp 到服务器。
我会考虑在进行更改时使用提交后挂钩来更新站点。这可能就像使用“svn export”将存储库的当前状态导出到实时网站位置一样简单。当然,如果您的网站有很多内容,这会考虑性能,因此您可能想要做一些更复杂的事情,并且只推送提交中更改的内容的更新。
您可能希望结合使用 CruiseControl(或 CruiseControl.NET)和 Ant(或 NAnt)。这对我们来说非常好。
Beanstalk 是一个集成了 ftp 和 subversion 的解决方案。
是的,你想要的就是 post_commit 钩子。
钩什么?我建议使用 rsync(如果您的站点实例不是 svn 工作副本)或带有密钥身份验证的 ssh 调用执行“cd WEBDIR && svn up”(如果是)的脚本。
Assembla用他们的 FTP 和 Subversion 工具得到了它。
SVN 的 post_commit 钩子非常适合这样的事情。
ADS(自动部署脚本看起来像是一个解决方案,但我从未尝试过 - 只是用谷歌搜索几秒钟找到它。
You may want to take a look at Unison. I was fairly happy with it as a publishing mechanism for a site where I wanted, effectively, a smart two-way rsync. You could probably tie it to SVN without much difficulty.
实际上需要发生的是,我标记为实时或稳定的更改需要与实时网站合并。这实际上意味着我不必担心意外复制文件,如果出现问题,它可以再次恢复到以前的版本。
我将调查 post_commit 钩子,但我必须先找到一种方法来进行备份,这样 subversion 的问题就不会杀死该站点。
svn2web 安装为 post-commit 钩子,每次提交时都会将 subversion 存储库中的 ftp 或 scp 文件传输到一个或多个 Web 服务器。有关详细信息,请参阅SourceForge项目。
http://svn2ftp.com > SVN2FTP 允许用户将 SVN / Subversion 提交直接推送到 FTP 或 SFTP 服务器