Azure DevOps の下書きプルリクエスト:「公開」まで待つもの
Azure Repos の下書きのプルリクエストは、うっかり完了されないための作業中の印です。Azure DevOps Services には2018年の Sprint 143 の更新で入り、Azure DevOps Server には 2019 からあります。Team Foundation Server 2018 にはありません。「Publish(公開)」を選ぶまで待つのは通知だけではありません。そして一つ意外なのは、手で足したレビュー担当者には下書きのうちから通知が届くことです。
下書きのうちはまだ起きないこと
Microsoft の 下書きの PR の作成(2026年9月10日更新)から:
- 投票できません。下書きの間、投票は無効です。
- 完了できません。これが下書きの目的です(Sprint 143 のリリース ノート:準備ができる前に完了されないように)。
- 必須のレビュー担当者はまだ付きません。ブランチ ポリシーが足すはずのレビュー担当者は、下書きには足されません。
- ビルドの検証は自動では走りません。ビルド検証のポリシーは自分からは動きません。プルリクエストの「その他のオプション」のメニューから手で実行できます。
- 通知は、足したレビュー担当者には届きます。下書きは静かではありません。手で足したレビュー担当者には、ふつうのプルリクエストと同じように通知されます。まだ知らせたくない相手は、公開してから足してください。
- プルリクエストの一覧では、下書きに Draft のバッジが付きます。
作成・公開・下書きに戻す
- Create as draft:プルリクエストを作るときに、「Create」の横の矢印から選びます。WIP のようなタイトルの前置きは要りません。
- プルリクエストの右上の「Publish」で、ふつうのプルリクエストになります。必須のレビュー担当者が付き、ポリシーが評価され、投票が始まります。
- 「Mark as draft」は、公開したプルリクエストを下書きに戻します。その時、ついていた投票はすべて消えます。前の承認は、次に公開した後でもう一度もらう必要があります。
- Azure CLI(Azure DevOps Services):
az repos pr create --draft trueで下書きを作り、az repos pr update --id 21 --draft falseで公開、--draft trueで下書きに戻します。CLI は Azure DevOps Server では使えません。 - REST API では、プルリクエストの
isDraftが下書きかどうかを表します。
IntelliJ IDEA での下書き
Azure DevOps Pull Requests は、Lesstep が作っている JetBrains IDE(2024.1 以降)と Android Studio のプラグインです。Azure DevOps Services と Azure DevOps Server のプルリクエストを IDE のツールウィンドウに並べ、下書きには [draft] と付けます。いまのブランチからプルリクエストか下書きを作れ、「公開する」のボタンで下書きを公開できます。1.0.52 からは、下書きの概要に、上のとおり公開まで待つものを書きます。下書きで「投票」や「完了」を押すと、サーバーに断られる変更を送らずに、Azure DevOps では公開されてからできることを伝えます。レビューの受け箱とブランチ ポリシーは無料、投票・コメント・完了・作成・公開は Pro(30日間の無料試用つき)です。画面は日本語です。
Azure DevOps は Microsoft Corporation の商標、IntelliJ IDEA は JetBrains s.r.o. の商標です。このページは Microsoft・JetBrains のいずれとも提携しておらず、承認も受けていません。
ほかに:ビルド検証と期限切れのビルド · 承認が「最低レビュー担当者数」に数えられない理由 · チームに割り当てられたプルリクエスト · Azure DevOps の Copilot コードレビュー · IntelliJ IDEA で使える Azure DevOps のプルリクエストのプラグインの比較 · English