4

Windows マシンにベア (中央) リポジトリを作成しました。私の同僚と私は現在、このリポジトリを使用しています。git が更新されるたびに電子メール通知を送信するようにします。post-receiveフック、構成mailinglist、およびemailprefixプロパティにスクリプトを記述する必要があることはわかっています。しかし、私が必要としているのは、Windows マシンでメールを送信するスクリプト (受信後) です。

注: 同様の質問がここで尋ねられます。しかし、答えは「何をすべきか」です。「どうやって?」ではありません。 レポジトリが Windows マシン上にある場合、git で post-receive-email スクリプトを使用してメールを送信できますか?

前もって感謝します。

4

1 に答える 1

3

これは、ストックの受信後のサンプルスクリプトのコメントで説明されているように実行できますが、GitforWindowsがsendmailではなくmsmtpを提供する点が異なります。寄稿されたスクリプトをcontrib/hooksから受信後のスクリプトに貼り付ける場合は、いくつかの変更を加えるだけで済みます。まず、SMTPサーバーを指定する必要があるため、構成変数sendemail.smtpserverを追加して、サーバーの名前に設定することをお勧めします。認証などが必要な場合は、それらの構成変数を検索し、スクリプトを修正してそれらを利用します。

貼り付けられた電子メールスクリプトで-sendmail次のようにmsmtpに置き換えます

send_mail()
{
    if [ -n "$envelopesender" ]; then
        msmtp --host="$smtpserver" -t -f "$envelopesender"
    else
        msmtp --host="$smtpserver" -t
    fi
}

そして最後に、ファイルの終わり近くにgit config変数を読み込むセクションがあるので、サーバー値を読み取るために新しい行を追加します。

smtpserver=$(git config sendemail.smtpserver)

hooks.mailinglistこれらの2つの変更が適切に行われると、スクリプトは正常に機能し、プッシュでアカウントにメールを送信します。

于 2012-06-19T08:43:45.773 に答える