25

私はgitのより高度な使用法に取り組んでいます。フックは私が行きたい方法だと思います。おそらく、誰かがここでアドバイスをくれるかもしれません。

私の計画は、3つのブランチ(開発、ステージング、本番)を持つgitリポジトリを持つことです。これらの3つのブランチのそれぞれにコミットして、コミット後に異なるスクリプトをトリガーしたいと思います。

gitにはこれを行う機能がありますか、それとも間違ったツリーを吠えていますか?

前もって感謝します。

4

2 に答える 2

37

コミット後のフックでは、次のことができます。

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
于 2011-06-16T17:29:00.430 に答える
1

この機能を実行するためのスクリプトを自分で作成しました。

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

サーバーでこのファイルをホストし、できればレポ ルートをホストし、github Webhook で URL を定義します。8 行目の「allcommits」をブランチ名に変更し、18 行目にコード/関数を追加します。

3 つのインスタンスすべてに対して個別のファイルと Webhook が必要になります。

お役に立てれば!

于 2013-12-01T12:59:56.630 に答える