Azure DevOps draft pull requests: what waits for Publish
A draft pull request in Azure Repos is work in progress that cannot be completed by accident. Drafts came to Azure DevOps Services in its Sprint 143 update (2018) and are in Azure DevOps Server from 2019; Team Foundation Server 2018 has none. What a draft holds back until you select Publish is more than notifications, and one of them surprises people: a reviewer you add by hand hears about the draft right away.
What a draft does not do yet
From Microsoft's Create draft PRs (updated September 10, 2026):
- No voting. Voting is disabled while the pull request is a draft.
- No completing. That is the point of a draft, from the Sprint 143 release notes: it cannot be completed before it is ready.
- No required reviewers yet. Reviewers that a branch policy would add are not added to a draft.
- No automatic build validation. Build validation policies do not run on their own; you can queue one by hand from the pull request's more options menu.
- Notifications go to the reviewers you add. A draft is not silent: reviewers added by hand are notified as on any pull request. If they should not hear about it yet, add them after publishing.
- In the pull requests list a draft carries a Draft badge.
Creating, publishing, and back
- Create as draft: when creating the pull request, select the arrow next to Create. Title prefixes such as WIP are not needed.
- Publish, at the upper right of the pull request, makes it a normal pull request: it adds the required reviewers, evaluates the policies and opens voting.
- Mark as draft turns a published pull request back into a draft, and removes every vote it had. Approvals given before have to be given again after the next Publish.
- Azure CLI (Azure DevOps Services):
az repos pr create --draft truecreates a draft;az repos pr update --id 21 --draft falsepublishes one and--draft truemakes one a draft. The CLI does not work with Azure DevOps Server. - Through the REST API, a pull request's
isDraftsays whether it is a draft.
Drafts in IntelliJ IDEA
Azure DevOps Pull Requests, a plugin by Lesstep for JetBrains IDEs 2024.1 or later and Android Studio, lists the pull requests of Azure DevOps Services and Azure DevOps Server in an IDE tool window, with drafts marked [draft]. It creates a pull request or a draft from the current branch, and its Publish button publishes a draft. From version 1.0.52, a draft's overview says what waits for publishing, as above, and Vote and Complete on a draft say that Azure DevOps opens them once it is published instead of sending a change the server refuses. The review inbox and the branch policies are free; voting, commenting, completing, creating and publishing are Pro, with a 30-day trial.
Get it on JetBrains Marketplace
Azure DevOps is a trademark of Microsoft Corporation; IntelliJ IDEA is a trademark of JetBrains s.r.o. This page is not affiliated with or endorsed by Microsoft or JetBrains.
More: build validation and expired builds · why an approval does not count · pull requests assigned to your team · Copilot code review in Azure DevOps · Azure DevOps pull request plugins for IntelliJ IDEA, compared · 日本語