Git
Chapters ▾ 2nd Edition

A3.9 Appendix C: Gitのコマンド - メール

メール

Git自体を含め、多くのGitプロジェクトは、もっぱらメーリングリスト上で管理されています。Gitには、メールで簡単に送れるパッチを生成したり、メールボックスからパッチ当てをしたりといった、このプロセスを補助するツールがいくつか組み込まれています。

git apply

git apply コマンドは、git diff コマンドまたはGNU diffコマンドで作成したパッチを適用します。ほんの少しの違いを除けば、これは`patch` コマンドが行うであろう処理と同様のものです。

メールで受け取ったパッチの適用 では、このコマンドの使い方と、それを行うであろう状況を例示しました。

git am

git am コマンドは、メールの受信トレイ(特にmboxフォーマットのもの)からパッチを適用するのに使用されます。これは、パッチをメールで受け取った上で、それを簡単にプロジェクトへ適用するのに役立ちます。

am でのパッチの適用 では、--resolved、, `-i および -3 オプションの使い方を含め、 git am コマンドの使い方とワークフローを取り上げました。

git am に関連したワークフローを便利にするのに使用できるフックは数多くあります。それらのフックはすべて Eメールワークフローフック で取り上げました。

メールでの通知 では、GitHubのプルリクエストの変更点をpatch形式にフォーマットしたものを、このコマンドを使用して適用しました。

git format-patch

git format-patch コマンドは、一連のパッチをmbox形式にフォーマットし、適切にフォーマットされた形式でメーリングリストへ送信できるようにします。

メールを使った公開プロジェクトへの貢献 では、 git format-patch ツールを使用してプロジェクトへ貢献する例を見てきました。

git imap-send

git imap-send コマンドを使うと、git format-patch コマンドによって生成された mailbox ファイルをIMAP サーバのドラフトフォルダにアップロードしてくれます。

プロジェクトへの貢献方法として、git imap-send を使ってパッチを送る例を メールを使った公開プロジェクトへの貢献 で紹介しています。

git send-email

git send-email コマンドは、git format-patch コマンドで生成したパッチをメールで送信する際に使用されます。

メールを使った公開プロジェクトへの貢献 では、git send-email ツールを使用して、パッチを送信してプロジェクトへ貢献する例を見てきました。

git request-pull

git request-pull コマンドは、単に誰かへのメールの本文の例を生成するのに使用されます。公開サーバにブランチがあり、メールでパッチを送信することなしにその変更点を取り込んでもらう方法を誰かに知ってもらいたい場合、このコマンドを実行して、変更点を取り込んでもらいたい人にその出力を送ることができます。

フォークされた公開プロジェクト では、git request-pull を使用してプルメッセージを生成する実例を示しました。