【问题标题】:subversion post commit hooks颠覆后提交挂钩
【发布时间】:2011-01-15 20:14:47
【问题描述】:

我有一种情况,我正在考虑使用 subversion/svn 作为项目的存储库/版本控制系统。我试图弄清楚是否有可能(如果有,如何)能够在提交后挂钩/进程上拥有颠覆系统,以将用户/文件/时间(可能还有 msg)写入其中一个外部文件 (csv) 或 mysql 数据库。

一旦我弄清楚如何调用提交提交挂钩将输出写入文件,我就可以修改我的问题跟踪器/项目应用程序,然后根据用户角色实现基本的工作流程,以及存储库文件的成功/失败。

简短的示例/指针会很有帮助。

我的测试环境,在 centos5 上运行 subversion/svnserve。使用的脚本语言是 Php/Python。

【问题讨论】:

    标签: php python svn hook svn-hooks


    【解决方案1】:

    我会说这是可能的,但您需要做一些工作来检索用户名、日期和提交消息。

    Subversion 使用 repo 路径和刚刚提交的修订号作为参数调用 post-commit 钩子。

    为了检索您要查找的信息,您需要使用名称为 svnlook 的可执行文件,它与 Subversion 捆绑在一起。

    查看 repo\hooks\post-commit.tmpl 以获得关于如何使用它的相当清晰的解释

    还有,看看svnlook help,用起来不难。

    【讨论】:

      【解决方案2】:

      确实很有可能,在您的存储库根目录中应该有一个名为 hooks 的文件夹,其中应该有一个名为 post-commit 的文件(如果没有,请创建一个),添加您放在那里的任何 bash 代码,它将执行每次提交后。

      注意,有 2 个变量传入脚本 $1 是存储库,$2 是修订号(我认为),您可以使用这两个变量执行一些 svn 命令/查询,并提取所需的数据,随心所欲。

      【讨论】:

        猜你喜欢
        • 2011-11-23
        • 1970-01-01
        • 2015-09-10
        • 1970-01-01
        • 1970-01-01
        • 2011-06-15
        • 1970-01-01
        • 2013-08-26
        • 1970-01-01
        相关资源
        最近更新 更多