是否可以在Subversion中创建自定义挂钩事件

问题描述:

我是颠覆管理的新手。是否有可能在subversion中创建一个自定义事件来触发一个钩子,例如我想在创建仓库时执行一个脚本。是否有可能创建一个将在创建新存储库时执行的钩子。是否可以在Subversion中创建自定义挂钩事件

也可以任何人请解释如何颠覆钩被解雇。例如,如何触发预提交钩子。 Subversion如何知道在每次提交之前应该执行一个特定的脚本?

你知道一个挂钩在Subversion服务器端执行,而不是在客户端。所以这意味着基于创建存储库是不可能的,因为挂钩脚本是存储库的一部分。所以在这种情况下,这是不可能的。

基础知识基于位于存储库的hooks文件夹中的脚本。如果这些脚本被定义为可执行的(+名称),则它们将被执行,否则将被执行。

根据我的理解,以及挂钩名称清楚地表明,当用户提交到Subversion服务器时,服务器在执行提交之前运行pre-commit挂钩,然后在成功完成提交时,之后运行post-commit

关于应该执行什么是相当可定制的。你可以运行简单的shell脚本,然后调用其他脚本(例如PHP,Python等)。它是由你决定。

只需编辑SERVER上储存库的hooks目录中的post-commit文件,然后每当客户端提交时,这些脚本就会运行。

请检查以了解更多信息:http://svnbook.red-bean.com/en/1.7/svn.reposadmin.create.html,特别是标题为“Implementing Repository Hooks”的部分