如何在svn上执行提交时在多个服务器上执行自动更新?

时间:2011-11-10 07:37:40

标签: svn commit

我想在我的代码上提交更改后立即自动在多个服务器上执行自动更新

更具体地说

我有多个代码实例,我希望在我提交代码

后立即更新它们

项目基于PHP

我该怎么做?

2 个答案:

答案 0 :(得分:1)

  

我想在我的代码上提交更改后立即自动在多个服务器上执行自动更新

您的服务器上的代码是否在工作副本内?你的行为取决于这种情况

  • 如果您的服务器是repo的WCs,那么您的任务就是从存储库的提交后挂钩开始“svn up” (ssh + cd + svn up ...)
  • 如果您的服务器不是WCs并且您可以访问这些服务器上的文件系统,则使用svn export + rm old + copy new(也)post-commit hook

答案 1 :(得分:0)

在每个实例上使用一些cron或其他调度实用程序来定期轮询SVN,并在有更改时自动更新。或者在服务器上安装一个post-commit钩子,它会在每个客户端实例上启动一个远程更新脚本(但这当然更复杂)。

请注意,所有这些实例都应该具有代码的只读副本。否则,更新可能需要手动合并才能成功。