如何为每个客户端创建和使用自定义本地预提交挂钩

时间:2014-06-12 10:07:20

标签: svn tortoisesvn pre-commit-hook

我们有一个SVN服务器,有大约10个开发人员承诺。

我想使用本地预提交挂钩在开发人员计算机上运行单元测试,而不是将该挂钩作为属性提交给repo。

流程是这样的:

  • 在domain.dev上进行本地开发
  • 在开发
  • 时手动运行单元测试(domain.dev/tests)
  • 提交更改
  • 运行向domain.dev/tests
  • 发出请求的本地预提交挂钩
  • 是否提交取决于domain.dev/tests
  • 的响应

理想情况下,我们会在另一个环境中构建和运行单元测试,但现在我们仍然坚持使用当前的设置。

在设置本地PCH时,我指定要运行的批处理文件。这包括执行测试的URL,domain.dev / tests。每个人的域名可能不同。为什么?同样,这不是一个理想的设置,但它是我们现在的工作方式。

当我设置它并提交属性更改时,批处理文件的路径是在提交中。

当其他人更新他们的仓库时,他们会更改这些属性,当然尝试提交失败,因为a)他们还没有批处理文件,b)批处理文件的路径保存在属性中。

是的,毕竟有没有办法创建一个只在客户端上执行的本地预提交钩子,而不是提交给repo,破坏每个人的一天?

感谢。

1 个答案:

答案 0 :(得分:1)

您可以在不使用属性的情况下在本地设置挂钩。转到设置对话框,钩子脚本,然后单击右下角的Add...按钮并在那里设置钩子脚本。