【问题标题】:Git commit hooks per branch每个分支的 Git 提交钩子
【发布时间】:2011-09-16 08:55:11
【问题描述】:

我正在研究 git 的一些更高级的用法,我认为钩子是我想走的路,也许有人可以在这里给我一些建议。

我的计划是拥有一个包含 3 个分支(开发、登台和生产)的 git 存储库。我希望提交到这 3 个分支中的每一个以在提交后触发不同的脚本。

git 有能力做到这一点还是我在找错树?

提前致谢。

【问题讨论】:

    标签: git branch post-commit githooks


    【解决方案1】:

    在提交后挂钩中,您可以执行以下操作:

    if [ `git rev-parse --abbrev-ref HEAD` == "development" ]; then
       echo "development-script"
    elif [ `git rev-parse --abbrev-ref HEAD` == "staging" ]; then
       echo "staging-script"
    elif [ `git rev-parse --abbrev-ref HEAD` == "production" ]; then
       echo "production-script"
    fi
    

    【讨论】:

      【解决方案2】:

      我为自己编写了一个脚本来执行此功能。

      https://github.com/fotuzlab/githubdump-php

      将此文件托管在您的服务器上,最好是 repo root 并在 github webhooks 中定义 url。将第 8 行的“allcommits”更改为您的分支名称,并在第 18 行添加您的代码/函数。

      所有 3 个实例都需要单独的文件和 webhook。

      希望这会有所帮助!

      【讨论】:

        猜你喜欢
        • 2017-08-24
        • 1970-01-01
        • 2013-12-15
        • 2012-06-06
        • 2011-09-14
        • 1970-01-01
        • 2023-03-04
        • 2019-07-12
        相关资源
        最近更新 更多