如何在没有新变更集的情况下执行Subversion Post-Commit触发器?

时间:2009-07-17 17:23:47

标签: svn

我正在尝试解决提交后的挂钩脚本问题。我需要能够尝试不同的解决方案,看看他们是否通过Subversion运行其提交后触发器来解决问题 - 这很关键,因为问题在于运行提交后脚本及其环境的特定用户帐户。 (我们的设置是SVN / Apache,其中Apache在Server 2003上作为LocalSystem运行)

无论如何,用虚假的“仅测试”变更集来填充存储库是次优的。有没有更好的方法告诉Subversion假装真正的变更集已经提交并运行后提交脚本?

3 个答案:

答案 0 :(得分:1)

当我遇到这个问题时,我设置了一个单独的存储库来测试我所有的VCS魔法。然后当它工作时,我将配置复制到我的生产项目。

对于Subversion,以下是有关如何设置新存储库的说明:

http://svnbook.red-bean.com/en/1.1/ch05s02.html

这样我就不必使用伪提交来污染我的真实存储库,并且我不会通过破坏他们的实际提交来破坏我的开发人员。

答案 1 :(得分:1)

我可能会尝试一些事情:

  • 将脚本移动到start-commit并故意返回非零值,这样就不会发生提交。根据您尝试解决的问题,这应该将环境复制得足够接近调试。

  • 直接在服务器上的shell中执行脚本。

答案 2 :(得分:0)

将脚本移动到start-commit的Darryl解决方案似乎很好。

使用上下文菜单中的“运行方式”选项,可以更轻松地直接执行脚本。甚至运行“cmd”作为LocalSystem用户,然后执行脚本...