リモートサーバーからミラーリングされたgit repoがあります。リモートサーバはコミット後の電子メール通知をサポートしておらず、私はそれにアクセスすることもできません。しかし、私は、このミラーコピーの新しいコミットを検出し、対応する電子メール通知を送信する方法を持っていることを望んでいます。まったく可能ですか?ミラーリングされたgit repoでポスト受信しますか?
おかげ
オリバー
リモートサーバーからミラーリングされたgit repoがあります。リモートサーバはコミット後の電子メール通知をサポートしておらず、私はそれにアクセスすることもできません。しかし、私は、このミラーコピーの新しいコミットを検出し、対応する電子メール通知を送信する方法を持っていることを望んでいます。まったく可能ですか?ミラーリングされたgit repoでポスト受信しますか?
おかげ
オリバー
はい。更新フックを実行し、更新があるたびにスクリプトを実行することができます。 gitがそのフックに渡す3つの引数は、ブランチ名、古いハッシュ、新しいハッシュです。この範囲をとり、コミットごとに電子メールを送信したり、すべてのコミットに対して1つの電子メールを送信したりすることができます。
ただし、これはセカンダリレポであるため、スケジュールされたジョブを取得してメインのものから更新する必要があります。
私は両方を試したと思います。ポスト受信フックとアップデートフック。どちらもうまくいかないようです。スケジュールされたcronジョブは、 "git fetch -q"を実行してリモートから変更を取得します。 – Oliver
どのように機能しないのですか?エラーが出ていますか?あなたは少なくともパラメータをエコーアウトすることはできますか? 'echo $ 1 $ 2 $ 3' –
これは間違ったフックかもしれません。更新フックは、リポジトリがプッシュされたときに呼び出されます。 –