SVN在提交时同步到文件夹

SVN在提交时同步到文件夹,svn,svnsync,Svn,Svnsync,我有一个分解的www文件夹,其中包含我的整个php网站 我想知道这样的事情是否可能: 开发人员不直接处理文件 在本地或临时服务器上测试更改 svn提交触发事件,该事件将对repo所做的最新更改同步到www文件夹 我听说过svnsync/svnexport工具,但如何在提交时触发它们或使它们“侦听”我的repo 此外,他们是否可以只更新更改的文件?我的回购协议非常大。人们经常这样做,所以它是在 简短版本: 使您的www目录成为工作副本 创建一个post-commit钩子,对该工作副本执行svn

我有一个分解的www文件夹,其中包含我的整个php网站

我想知道这样的事情是否可能:

  • 开发人员不直接处理文件
  • 在本地或临时服务器上测试更改
  • svn提交触发事件,该事件将对repo所做的最新更改同步到www文件夹
我听说过svnsync/svnexport工具,但如何在提交时触发它们或使它们“侦听”我的repo


此外,他们是否可以只更新更改的文件?我的回购协议非常大。

人们经常这样做,所以它是在

简短版本:

  • 使您的
    www
    目录成为工作副本
  • 创建一个post-commit钩子,对该工作副本执行
    svn-update
  • 如果您的存储库服务器不能直接访问web服务器(它不应该这样做),您最好使用以下方法:

  • 在存储库服务器或中间服务器上创建工作副本
  • 创建一个post-commit钩子,对该工作副本执行
    svn-update
  • rsync
    将工作副本复制到web服务器(这可能是post comit钩子脚本的一部分)
  • 另一种选择是使用持续集成服务器来监视存储库更改并部署它们。事实上,这是大多数商店的最佳选择。您将使用CI服务器更新临时服务器,然后仅在测试完成后推送到实时服务器。然后,您的开发人员将只在本地、私有的工作副本中工作