Skip to main content

プルリクエストにコミットの squash を設定する

リポジトリでの お使いの GitHub Enterprise Server インスタンス 上のすべての pull request のマージに対するコミットのスカッシュを、強制、許可、または無効化できます。

ワークフローのニーズや Git 履歴管理の設定に合わせて、pull request のマージ オプションを設定できます。 詳しくは、「プルリクエストマージを設定する」を参照してください。

スカッシュ マージの既定のコミット メッセージの詳細については、「プルリクエストのマージについて」を参照してください。

  1. GitHub で、リポジトリのメイン ページに移動します。

  2. リポジトリ名の下にある [設定] をクリックします。 [設定] タブが表示されない場合は、 [] ドロップダウン メニューを選び、 [設定] をクリックします。

    タブを示すリポジトリ ヘッダーのスクリーンショット。 [設定] タブが濃いオレンジ色の枠線で強調表示されています。

  3. [全般] 設定ページ (既定で選択) で、"Pull Requests" とマークされたセクションまで下にスクロールします。

  4. [pull request] で、 [スカッシュ マージを許可する] を選択します。 これにより、コントリビューターが全てのコミットを 1 つのコミットに squash してプルリクエストをマージできるようになります。 マージ時に共同作成者に表示される既定のコミット メッセージは、pull request に含まれるコミットが 1 つのみの場合はコミットのタイトルとメッセージ、pull request に含まれるコミットが 2 つ以上の場合は pull request のタイトルとコミットの一覧です。

  5. 必要に応じて、 [スカッシュ マージを許可する] の下でドロップダウン メニューを選び、マージ時に共同作成者に表示する既定のスカッシュ コミット メッセージの形式をクリックしてください。

    既定のメッセージには、pull request に含まれるコミットが 1 つのみの場合はコミットのタイトルとメッセージ、pull request に含まれるコミットが 2 つ以上の場合は pull request のタイトルとコミットの一覧が使われます。 また、pull request のタイトルのみ、pull request のタイトルとコミットの詳細、pull request のタイトルと説明を使うこともできます。

複数のマージ方法を選んだ場合、コラボレーターは pull request をマージするときに使用するマージコミットの種類を選べます。 コミットの線形履歴を必要とする保護されたブランチ ルールがリポジトリにある場合、スカッシュ マージ、リベース マージ、あるいはその両方を許可しなければなりません。 詳しくは、「保護されたブランチについて」を参照してください。

参考資料