104

一連の変更がアップストリームリポジトリにプッシュされるたびに要約メールを送信するように適切なGitフックを構成するにはどうすればよいですか?

4

11 に答える 11

94

これを行うためのもう1つのより現代的な方法は、以下のChordsによって提案されているように、git-multimailを使用することです。


これが2009年のやり方です。

$ GITDIR / hooksの受信後のフックにこのようなものを追加するか、ソースのcontribディレクトリにあるスクリプトを使用できます(ここで入手可能)

于 2009-02-16T05:49:11.717 に答える
20

これが私が見つけた最も簡単な解決策です:

1) github.com でgitHubアカウントにログインします。

2) メイン タブで [設定] をクリックします。

3) メイン ナビゲーションから [サービス フック] を選択します。

4) Available Hooks から Email を選択します

5) アドレス欄にメールアドレスを入力してください

6) [作成者から送信] チェックボックスをオンにします。

7) チェックボックスアクティブにチェックを入れます

8) [設定の更新]をクリックします。

オプション: テスト用に [テスト フック] をクリックし、メールを受信する受信トレイを確認します。

また、プロセスに従って作成された画像もあります。

ここに画像の説明を入力

ここに画像の説明を入力

ここに画像の説明を入力

ここに画像の説明を入力

そして今、グランドファイナルに向けて、私の側でテストされ承認された答えがあります.

gitHub の Service Hooks->Email で最大 2 人の受信者しか許可されていない場合に、すべての開発チーム メンバーに E メールを送信する方法 } .

答えは、Service Hook->Email @ GitHub && Google グループの組み合わせです

  1. まずはGoogleアカウントにログイン
  2. Google グループに移動し、上部にある [グループの作成] をクリックします。
  3. グループ名、グループのメール アドレス (GitHub サービス フック -> メール アドレスにコピー/貼り付け)、グループの説明を入力します。
  4. その後、上部にある [作成] ボタンをクリックすると、新しいグループが作成されます。
  5. その後、左側のメニューで [メンバーを招待] をクリックし、チーム メイトのメール アドレスを入力します。
  6. その後、 [招待を送信] (メンバーが招待を受け入れると) を押した後、彼らはこのグループの正式なメンバーになりました
  7. 左側のメニューで [すべてのメンバー] をクリックし、[配信] という 4 番目の列を確認します。すべてのチーム メンバーには [ すべてのメール] オプションが必要です。
  8. その後、Clement Escoffier 氏の功績を称えたいと思います。彼のガイドラインに従ってください @ Clement Escoffier::Send Github commits to a Google Group on how to finish. {クレメントありがとう:)}
  9. リンクが利用できなくなった場合は、私の gDocs @ Clements ガイドの PDF 版への別のリンクがここにあります
于 2013-04-25T19:58:52.467 に答える
10

これは、誰かがリポジトリにプッシュするたびにユーザーに電子メール通知を送信する私の方法です。

Git コミットの電子メール通知の設定

アンディ・パーキンスの脚本に基づいています。メールの送信にSMTPを使用するように変更します。もちろんgmailのSMTPも使えます。

于 2010-05-28T05:43:33.203 に答える
6

Robin Sommergit-notifierも、次の形式で非常に優れた要約を生成します。

Subject: [git/git-notifier] master: Adding www target to Makefile. (7dc1f95)

Repository : ssh://<removed>/git-notifier

On branch  : master

>---------------------------------------------------------------

commit 7dc1f95c97275618d5bde1aaf6760cd7ff6a6ef7
Author: Robin Sommer <robin@icir.org>
Date:   Sun Dec 19 20:21:38 2010 -0800

    Adding www target to Makefile.

>---------------------------------------------------------------

 Makefile |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/Makefile b/Makefile
index e184c66..9c9951b 100644
--- a/Makefile
+++ b/Makefile
@@ -5,6 +5,8 @@ VERSION   = 0.1

 DISTFILES = git-notifier README COPYING

+WWW = $(HOME)/www/git-notifier
+
 all:

 dist:
@@ -13,3 +15,7 @@ dist:
    cp $(DISTFILES) git-notifier-$(VERSION)
    tar czvf git-notifier-$(VERSION).tgz git-notifier-$(VERSION)
    rm -rf git-notifier-$(VERSION)
+
+www: dist
+   rst2html.py README >$(WWW)/index.html
+   cp git-notifier-$(VERSION).tgz $(WWW)
于 2010-12-29T20:42:10.647 に答える
4

hooks.showrev を設定しても区別できる違いはありませんか? :-/

サンプル構成:

# less users/cj.git/config 
[core]
        repositoryformatversion = 0
        filemode = true
        bare = true
[hooks]
        mailinglist = cj@yoga.ee
        showrev = "git show -C %s; echo"
        emailprefix = "[sabu gitosis server] "
于 2009-11-13T11:38:21.167 に答える
1

私はなんとかこれを行うことができましたが、アレクサンドル・ジュリアードによる他の(perl)スクリプトではなく、contribスクリプトを使用することを選択する必要がありました。それはより魅力的でより構成可能に見えますが、postfixでは「-s」を受け入れるメールコマンドがありませんでしたか?これが私のやり方です:

http://pastie.textmate.org/695323

完全なパッチ、gitwebリンク、コミットグラフなど、さらにいくつかの情報を表示すると便利ですが、このスクリプトは最初のスクリプトしか実行できません。hooks.showrevをいじってみるとそうです。

とにかく、乾杯と提案に感謝します!

于 2009-11-12T20:04:40.670 に答える
0

Windowsを使用する場合は、scm-notifierが役立ちます。

于 2012-10-09T13:01:10.063 に答える
0

Github 固有であるため、完全な回答ではありませんが、Github を使用する場合は、「サービス フック」を構成するのは非常に簡単です。
監視するリポジトリごとに、Settings / Service Hooks を入力します。
Trac、Twitter、Amazon SNS、Jira、Asana、Bugzilla、FogBugz、IRC、Jabber、Pivo​​tal Tracker、Trello、Email など、利用可能な統合が多数あります。E メール
を選択して、グループの E メールアドレスをフィードするだけです。
メール通知を使用して開発者を同期します。

于 2012-12-17T20:56:16.937 に答える