Lesstep
Azure DevOps Services・Server・プルリクエストの完了・2026年10月28日

Azure DevOps のマージの種類:スカッシュ・リベース・半線形と Limit merge types

プルリクエストを完了する時の Merge type(マージの種類)で、ターゲット ブランチに何が入るかが決まります。Azure Repos には4つあり、ブランチ ポリシーの Limit merge types でその一部だけを許せます。許されていない種類で完了しようとすると、Azure DevOps に断られます。以下は Microsoft の プルリクエストの完了とブランチ ポリシーのページから、それぞれの働きと制限のもとをまとめたものです。

4つのマージの種類

リベースして早送りと半線形マージは 2019年に入りました(Sprint 150)。それまではマージ コミットとスカッシュだけでした。Azure DevOps Server では Server 2019 Update 1 から新しい2つを受け付け、TFS 2018 と Update なしの Server 2019 はマージかスカッシュだけです。

Limit merge types

よくあるつまずき

マージ コミットのメッセージ

IntelliJ IDEA でのマージの種類

Azure DevOps Pull Requests は、Lesstep が作っている JetBrains IDE(2024.1 以降)と Android Studio のプラグインです。Azure DevOps Services と Azure DevOps Server のプルリクエストを IDE のツールウィンドウに並べます。完了の画面には4つのマージの種類があり(TFS 2018 と Update 1 より前の Server 2019 ではマージかスカッシュ)、1.0.53 からはターゲット ブランチが許す種類だけが出て、ブランチ ポリシーの欄にも許される種類の名前が出ます。選んだ種類で自動完了も設定できます。1.0.68 からは、完了の画面でマージ コミットのメッセージも書けます(すぐの完了にも自動完了にも使う。空のままなら Azure DevOps の既定のメッセージ。リベースして早送りでは書けません)。レビューの受け箱とブランチ ポリシーは無料、投票・コメント・完了・プルリクエストの作成は Pro(30日間の無料試用つき)です。画面は日本語です。

JetBrains Marketplace で入れる

Azure DevOps は Microsoft Corporation の商標、IntelliJ IDEA は JetBrains s.r.o. の商標です。このページは Microsoft・JetBrains のいずれとも提携しておらず、承認も受けていません。

ほかに:マージ競合と Merge Conflict Extension · 自動完了と任意のポリシー · 必須のレビュー担当者とパスの絞り込み · ポリシーを回避する明示的なオーバーライド · 承認が「最低レビュー担当者数」に数えられない理由 · IntelliJ IDEA で使える Azure DevOps のプルリクエストのプラグインの比較 · English