【问题标题】:Tortoise SVN Post-Commit Hook WindowsTortoise SVN 提交后挂钩窗口
【发布时间】:2016-06-02 11:56:26
【问题描述】:

我正在通过 Windows Tortoise SVN 中的客户端提交后挂钩使用 curl 发送 JSON,为 SVN 项目进行简单的松弛集成。我想在提交时发布一些基本信息,最好是修订号和评论。我添加了一个 post-commit 客户端钩子,它执行一个 postcommit.bat 文件,该文件成功地向我的 slack 通道发送一条消息。我无法工作的是包括从乌龟传入的变量。根据 tortoise 的说法,SVN 客户端钩子 post-commit 将包含以下参数 PATH DEPTH MESSAGEFILE REVISION ERROR CWD https://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-settings.html

这是我的工作代码,它发送一个静态字符串(不包括消息/修订到我的松弛通道):

C:\p\curl -H "Content-Type: application/json" -X POST https://hooks.slack.com/services/MYSECRETSERVICE -d "{\"text\":\"Test message\"}"

我想做这样的事情,但下面的代码没有,它只是发布“RevMessage”,或者换句话说,参数没有正确传递:

C:\p\curl -H "Content-Type: application/json" -X POST https://hooks.slack.com/services/MYSECRETSERVICE -d "{\"text\":\"Rev%REVISION%Message%MESSAGE%\"}"

【问题讨论】:

    标签: batch-file svn tortoisesvn post-commit-hook


    【解决方案1】:

    好的,这可能太具体了(从观看次数来看),我必须自己回答,哈哈。无论如何,也许其他人会发现这很有用,这就是最终对我有用的方法。首先需要从参数中设置变量,然后它们可以被引用,如下所示:

        set tsvnPath=%1
        set tsvnDepth=%2
        set tsvnMsgFile=%3
        set /p THEMSG=<%3
        set tsvnRevision=%4
        set tsvnError=%5
        set tsvnCwd=%6
        C:\p\curl -H "Content-Type: application/json" -X POST https://hooks.slack.com/services/MYSECRET -d "{\"text\":\"MSG %THEMSG% REV %tsvnRevision%\"}"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-06-08
      • 2015-05-19
      • 1970-01-01
      • 2014-08-10
      • 2012-10-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多