Edited at

Bitbucket プルリクエストのマージで Squash マージを使う

More than 1 year has passed since last update.


はじめに

この記事は Atlassian User Group Tokyo Advent Calendar 2016 16日目の記事です。

アトラシアン 長阪です。

Bitbucket のLabs機能に Beta版の機能ですが「Squash merge your branches」 という機能があるのをご存知でしょうか。

この機能を有効にすると プルリクエストのマージの際に Squash マージが出来るようになります。


Squash マージとは

ブランチからのプルリクエストをマージする時、送られてきたプルリクエストに複数のコミットが含まれている場合に、複数のコミットのまま マージしないで ブランチのコミットをまとめて、一つのコミットとしてマージしたい時がありますよね。

その時に使用できるのが Squash マージです。

下の図のような 流れです。

Stash merge

Bitbucket でも、現在 Beta版の実験的扱いながら機能を有効にすることで使用することができます。

おかしい動作がありましたら是非フィードバック下さい。:pray:


機能を有効にするには


  1. Bitbucket の画面右上のアイコンをクリックし、「アカウントの管理」を選択します。

     アカウントの管理


  2. INTEGRATIONS AND FEATURES の Labs を選択します。

    Labs


  3. 「Squash mearge your branches」 を有効にします。

     labs — Bitbucket 2016-12-14 午後6時-15-55.png


これだけです。


Squash マージする

では 有効にした後で実際に マージの際に Squash マージを使ってみましょう。

下の画像のような 二つのコミットがある プルリクエストを作成しました。 プルリクエストを作る側はあえてコミットをまとめてません。 こちらのプルリクエストをマージしてみたいと思います。

プルリクエスト1

「Squash mearge your branches」が有効になっていると プルリクエストをマージのダイアログで以下の画像のように 「Merge strategy」 という項目が表示され、"Merge commit" と "Squash" が選択できるようになります。

Squash を選択しマージします。

マージ1

マージされると そのコミットは下の画像のように 一つのコミットとしてマージされます。

マージ2

これで 簡単にコミットをまとめてマージすることができます。


まとめ

「Squash mearge your branches」 を有効にするとマージの「Merge strategy」 として


  • 複数コミットのままマージする(Merge commit)

  • 一つのコミットにまとめてマージ(Squash)

を選択することが出来るようになり Squash マージも使えます。


さいごに

Bitbucket は Pipelines というCI機能も使用できるようになりました。 みなさん是非活用ください。

明日は ヒゲで有名な Atlassian の岡本さんです。

Atlassian 製品は日本語でもサポートしています

- Atlassian製品の日本語サポート情報はこちらにございます。