Pull Requests - Get Pull Request

检索拉取请求。

GET https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/pullrequests/{pullRequestId}?api-version=7.1-preview.1
GET https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/pullrequests/{pullRequestId}?maxCommentLength={maxCommentLength}&$skip={$skip}&$top={$top}&includeCommits={includeCommits}&includeWorkItemRefs={includeWorkItemRefs}&api-version=7.1-preview.1

URI 参数

名称 必需 类型 说明
organization
path True

string

Azure DevOps 组织的名称。

pullRequestId
path True

integer

int32

要检索的拉取请求的 ID。

repositoryId
path True

string

拉取请求的目标分支的存储库 ID。

project
path

string

项目 ID 或项目名称

api-version
query True

string

要使用的 API 版本。 这应设置为“7.1-preview.1”才能使用此版本的 API。

$skip
query

integer

int32

未使用。

$top
query

integer

int32

未使用。

includeCommits
query

boolean

如果为 true,将返回拉取请求以及关联的提交。

includeWorkItemRefs
query

boolean

如果为 true,将返回拉取请求以及关联的工作项引用。

maxCommentLength
query

integer

int32

未使用。

响应

名称 类型 说明
200 OK

GitPullRequest

成功的操作

安全性

oauth2

Type: oauth2
Flow: accessCode
Authorization URL: https://app.vssps.visualstudio.com/oauth2/authorize&response_type=Assertion
Token URL: https://app.vssps.visualstudio.com/oauth2/token?client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer

Scopes

名称 说明
vso.code 授予读取有关提交、更改集、分支和其他版本控制项目的源代码和元数据的能力。 此外,还授予搜索代码的功能,并通过服务挂钩获取有关版本控制事件的通知。

定义

名称 说明
ChangeCountDictionary
GitChange
GitCommitRef

提供描述 Git 提交和关联元数据的属性。

GitForkRef

有关分叉参考的信息。

GitPullRequest

表示与拉取请求关联的所有数据。

GitPullRequestCompletionOptions

有关应如何完成拉取请求的首选项。

GitPullRequestMergeOptions

创建拉取请求合并时使用的选项。

GitPullRequestMergeStrategy

指定用于在完成期间合并拉取请求的策略。 如果未将 MergeStrategy 设置为任何值,则将在 SquashMerge == false 时创建 no-FF 合并。 如果未将 MergeStrategy 设置为任何值,则 SquashMerge == true 时将压缩拉取请求提交。 SquashMerge 属性已弃用。 建议在所有情况下显式设置 MergeStrategy。 如果为 MergeStrategy 提供了显式值,则将忽略 SquashMerge 属性。

GitPushRef
GitRepository
GitRepositoryRef
GitStatus

此类包含发布状态的服务/扩展的元数据。

GitStatusContext

唯一标识状态的状态上下文。

GitStatusState

状态的状态。

GitTemplate
GitUserDate

Git 操作的用户信息和日期。

IdentityRef
IdentityRefWithVote

标识信息,包括对拉取请求的投票。

ItemContent
ItemContentType
ProjectState

项目状态。

ProjectVisibility

项目可见性。

PullRequestAsyncStatus

拉取请求合并的当前状态。

PullRequestMergeFailureType

如果拉取请求的任何) 合并,则失败类型 (。

PullRequestStatus

拉取请求的状态。

ReferenceLinks

表示 REST 引用链接集合的类。

ResourceRef
TeamProjectCollectionReference

TeamProjectCollection 的引用对象。

TeamProjectReference

表示对 TeamProject 的浅表引用。

VersionControlChangeType

对项所做的更改的类型。

WebApiTagDefinition

通过网络发送的标记定义的表示形式。

ChangeCountDictionary

GitChange

名称 类型 说明
changeId

integer

更改组中更改的 ID。

changeType

VersionControlChangeType

对项所做的更改的类型。

item

string

当前版本。

newContent

ItemContent

更改后的项的内容。

newContentTemplate

GitTemplate

推送新更改时要使用的新内容模板。

originalPath

string

项的原始路径(如果不同于当前路径)。

sourceServerItem

string

服务器上的项的路径。

url

string

用于检索项的 URL。

GitCommitRef

提供描述 Git 提交和关联元数据的属性。

名称 类型 说明
_links

ReferenceLinks

相关 REST 引用链接的集合。

author

GitUserDate

提交的作者。

changeCounts

ChangeCountDictionary

提交中包含的更改类型 (编辑、删除等 ) 计数。

changes

GitChange[]

提交中包含的更改的枚举。

comment

string

提交注释或消息。

commentTruncated

boolean

指示注释是否从完整的 Git 提交注释消息中截断。

commitId

string

提交的 ID (SHA-1) 。

commitTooManyChanges

boolean

指示提交包含太多无法显示的更改

committer

GitUserDate

提交的提交者。

parents

string[]

此提交的父提交 ID 的枚举。

push

GitPushRef

与此提交关联的推送。

remoteUrl

string

提交的远程 URL 路径。

statuses

GitStatus[]

来自服务和扩展的状态元数据的列表,这些元数据可能会将其他信息关联到提交。

url

string

此资源的 REST URL。

workItems

ResourceRef[]

与此提交关联的工作项列表。

GitForkRef

有关分叉参考的信息。

名称 类型 说明
_links

ReferenceLinks

表示 REST 引用链接集合的类。

creator

IdentityRef

isLocked

boolean

isLockedBy

IdentityRef

name

string

objectId

string

peeledObjectId

string

repository

GitRepository

分叉的存储库 ID。

statuses

GitStatus[]

此类包含发布状态的服务/扩展的元数据。

url

string

GitPullRequest

表示与拉取请求关联的所有数据。

名称 类型 说明
_links

ReferenceLinks

指向其他相关对象的链接。

artifactId

string

唯一标识此拉取请求的字符串。 若要为拉取请求生成项目 ID,请使用以下模板: vstfs:///Git/PullRequestId/{projectId}/{repositoryId}/{pullRequestId}

autoCompleteSetBy

IdentityRef

如果设置,则会为此拉取请求启用自动完成,这是启用它的标识。

closedBy

IdentityRef

关闭拉取请求的用户。

closedDate

string

拉取请求关闭 (完成、放弃或在外部) 合并的日期。

codeReviewId

integer

拉取请求的代码评审 ID。 内部使用。

commits

GitCommitRef[]

拉取请求中包含的提交。

completionOptions

GitPullRequestCompletionOptions

影响拉取请求完成后合并方式的选项。

completionQueueTime

string

拉取请求进入要完成的队列的最近日期。 内部使用。

createdBy

IdentityRef

创建拉取请求的用户的标识。

creationDate

string

拉取请求的创建日期。

description

string

拉取请求的说明。

forkSource

GitForkRef

如果这是来自分叉的 PR,则包含有关其源的信息。

hasMultipleMergeBases

boolean

多个合并数据库警告

isDraft

boolean

草稿/WIP 拉取请求。

labels

WebApiTagDefinition[]

与拉取请求关联的标签。

lastMergeCommit

GitCommitRef

最新拉取请求合并的提交。 如果为空,则最近的合并正在进行或未成功。

lastMergeSourceCommit

GitCommitRef

上次拉取请求合并时源分支头处的提交。

lastMergeTargetCommit

GitCommitRef

上次拉取请求合并时目标分支头处的提交。

mergeFailureMessage

string

如果设置,拉取请求合并会因此失败。

mergeFailureType

PullRequestMergeFailureType

如果拉取请求合并的任何) ,则 (失败的类型。

mergeId

string

用于运行拉取请求合并的作业的 ID。 内部使用。

mergeOptions

GitPullRequestMergeOptions

拉取请求合并运行时使用的选项。 这些选项与完成选项不同,因为完成仅发生一次,并且每次拉取请求的源分支更改时都会运行新的合并。

mergeStatus

PullRequestAsyncStatus

拉取请求合并的当前状态。

pullRequestId

integer

拉取请求的 ID。

remoteUrl

string

内部使用。

repository

GitRepository

包含拉取请求的目标分支的存储库。

reviewers

IdentityRefWithVote[]

拉取请求中的审阅者列表及其投票状态。

sourceRefName

string

拉取请求的源分支的名称。

status

PullRequestStatus

拉取请求的状态。

supportsIterations

boolean

如果为 true,则此拉取请求支持多次迭代。 迭代支持意味着可以查看对拉取请求的源分支的单个推送,并在将来的迭代中跟踪一次迭代中留下的注释。

targetRefName

string

拉取请求的目标分支的名称。

title

string

拉取请求的标题。

url

string

内部使用。

workItemRefs

ResourceRef[]

与此拉取请求关联的任何工作项引用。

GitPullRequestCompletionOptions

有关应如何完成拉取请求的首选项。

名称 类型 说明
autoCompleteIgnoreConfigIds

integer[]

自动完成不应等待的任何策略配置 ID 的列表。 仅适用于 (isBlocking == false) 的可选策略。 自动完成始终等待所需的策略 (isBlocking == true) 。

bypassPolicy

boolean

如果为 true,则拉取请求完成时将显式绕过策略。

bypassReason

string

如果绕过策略,则会存储此原因,说明为何使用绕过。

deleteSourceBranch

boolean

如果为 true,则拉取请求的源分支将在完成后删除。

mergeCommitMessage

string

如果设置,则将用作合并提交的提交消息。

mergeStrategy

GitPullRequestMergeStrategy

指定用于在完成期间合并拉取请求的策略。 如果未将 MergeStrategy 设置为任何值,则将在 SquashMerge == false 的情况下创建 no-FF 合并。 如果未将 MergeStrategy 设置为任何值,则 SquashMerge == true 时将压缩拉取请求提交。 SquashMerge 属性已弃用。 建议在所有情况下显式设置 MergeStrategy。 如果为 MergeStrategy 提供了显式值,则将忽略 SquashMerge 属性。

squashMerge

boolean

SquashMerge 已弃用。 应显式设置 MergeStrategy 的值。 如果将 MergeStrategy 设置为任何值,则将忽略 SquashMerge 值。 如果未设置 MergeStrategy,则如果此标志为 false,合并策略将为 no-fast-forward,如果为 true,则为 squash。

transitionWorkItems

boolean

如果为 true,我们将尝试将链接到拉取请求的任何工作项转换为下一个逻辑状态 (即活动 -> 已解决)

triggeredByAutoComplete

boolean

如果为 true,则当前完成尝试是通过自动完成触发的。 内部使用。

GitPullRequestMergeOptions

创建拉取请求合并时使用的选项。

名称 类型 说明
conflictAuthorshipCommits

boolean

如果为 true,合并期间应用的冲突解决将放入单独的提交中,以保留 git 追溯 等的作者信息。

detectRenameFalsePositives

boolean

disableRenames

boolean

如果为 true,则合并期间不会执行重命名检测。

GitPullRequestMergeStrategy

指定用于在完成期间合并拉取请求的策略。 如果未将 MergeStrategy 设置为任何值,则将在 SquashMerge == false 时创建 no-FF 合并。 如果未将 MergeStrategy 设置为任何值,则 SquashMerge == true 时将压缩拉取请求提交。 SquashMerge 属性已弃用。 建议在所有情况下显式设置 MergeStrategy。 如果为 MergeStrategy 提供了显式值,则将忽略 SquashMerge 属性。

名称 类型 说明
noFastForward

string

双父级无快进合并。 源分支保持不变。 这是默认行为。

rebase

string

在提交HEAD目标分支的基础上重新设置源分支的基数,并快进目标分支。 在重定基操作期间更新源分支。

rebaseMerge

string

在提交HEAD目标分支的基础上重新设置源分支的基数,并创建双父无快进合并。 在重定基操作期间更新源分支。

squash

string

将拉取请求中的所有更改放入单父提交中。

GitPushRef

名称 类型 说明
_links

ReferenceLinks

表示 REST 引用链接集合的类。

date

string

pushId

integer

pushedBy

IdentityRef

url

string

GitRepository

名称 类型 说明
_links

ReferenceLinks

表示 REST 引用链接集合的类。

defaultBranch

string

id

string

isDisabled

boolean

如果存储库处于禁用状态,则为 True。 否则为 False。

isFork

boolean

如此 如果存储库创建为分支。

isInMaintenance

boolean

如果存储库处于维护状态,则为 True。 否则为 False。

name

string

parentRepository

GitRepositoryRef

project

TeamProjectReference

表示对 TeamProject 的浅表引用。

remoteUrl

string

size

integer

存储库) (字节的压缩大小。

sshUrl

string

url

string

validRemoteUrls

string[]

webUrl

string

GitRepositoryRef

名称 类型 说明
collection

TeamProjectCollectionReference

此分支所在的团队项目集合

id

string

isFork

boolean

如此 如果存储库是作为分支创建的

name

string

project

TeamProjectReference

表示对 TeamProject 的浅表引用。

remoteUrl

string

sshUrl

string

url

string

GitStatus

此类包含发布状态的服务/扩展的元数据。

名称 类型 说明
_links

ReferenceLinks

参考链接。

context

GitStatusContext

状态的上下文。

createdBy

IdentityRef

创建状态的标识。

creationDate

string

状态的创建日期和时间。

description

string

状态说明。 通常描述状态的当前状态。

id

integer

状态标识符。

state

GitStatusState

状态的状态。

targetUrl

string

包含状态详细信息的 URL。

updatedDate

string

状态的上次更新日期和时间。

GitStatusContext

唯一标识状态的状态上下文。

名称 类型 说明
genre

string

状态的流派。 生成状态的服务/工具的名称通常可以为空。

name

string

状态的名称标识符不能为 null 或空。

GitStatusState

状态的状态。

名称 类型 说明
error

string

出现错误的状态。

failed

string

状态失败。

notApplicable

string

状态不适用于目标对象。

notSet

string

状态状态未设置。 默认状态。

pending

string

状态挂起。

succeeded

string

状态成功。

GitTemplate

名称 类型 说明
name

string

模板的名称

type

string

模板的类型

GitUserDate

Git 操作的用户信息和日期。

名称 类型 说明
date

string

Git 操作的日期。

email

string

Email执行 Git 操作的用户的地址。

imageUrl

string

用户头像的 URL。

name

string

执行 Git 操作的用户的名称。

IdentityRef

名称 类型 说明
_links

ReferenceLinks

此字段包含零个或多个有关图形主题的有趣链接。 可以调用这些链接来获取有关此图主题的其他关系或更详细的信息。

descriptor

string

描述符是在系统运行时引用图形主题的主要方法。 此字段将唯一标识帐户和组织中的同一图形主题。

directoryAlias

string

已弃用 - 可通过查询 IdentityRef“_links”字典的“self”条目中引用的 Graph 用户来检索

displayName

string

这是图形主题的非唯一显示名称。 若要更改此字段,必须在源提供程序中更改其值。

id

string

imageUrl

string

已弃用 - 在 IdentityRef“_links”字典的“头像”条目中可用

inactive

boolean

已弃用 - 可通过查询 GraphUser“_links”字典的“membershipState”条目中引用的 Graph 成员身份状态来检索

isAadIdentity

boolean

已弃用 - 可以从描述符的主题类型推断 (Descriptor.IsAadUserType/Descriptor.IsAadGroupType)

isContainer

boolean

已弃用 - 可以从描述符的主题类型推断 (描述符.IsGroupType)

isDeletedInOrigin

boolean

profileUrl

string

已弃用 - 未在 ToIdentityRef 的大多数预先存在的实现中使用

uniqueName

string

已弃用 - 改用 Domain+PrincipalName

url

string

此 URL 是指向此图主题的源资源的完整路由。

IdentityRefWithVote

标识信息,包括对拉取请求的投票。

名称 类型 说明
_links

ReferenceLinks

此字段包含有关图形主题的零个或多个相关链接。 可以调用这些链接来获取有关此图主题的其他关系或更多详细信息。

descriptor

string

描述符是在系统运行时引用图形主题的主要方式。 此字段将唯一标识帐户和组织中的同一图形主题。

directoryAlias

string

已弃用 - 可通过查询 IdentityRef“_links”字典的“self”条目中引用的 Graph 用户来检索

displayName

string

这是图形主题的非唯一显示名称。 若要更改此字段,必须在源提供程序中更改其值。

hasDeclined

boolean

指示此审阅者是否拒绝审阅此拉取请求。

id

string

imageUrl

string

已弃用 - 在 IdentityRef“_links”字典的“头像”条目中可用

inactive

boolean

已弃用 - 可以通过查询 GraphUser“_links”字典的“membershipState”条目中引用的 Graph 成员身份状态来检索

isAadIdentity

boolean

已弃用 - 可以从描述符的主题类型推断 (描述符.IsAadUserType/Descriptor.IsAadGroupType)

isContainer

boolean

已弃用 - 可以从描述符的主题类型推断 (描述符.IsGroupType)

isDeletedInOrigin

boolean

isFlagged

boolean

指示此审阅者是否被标记为对此拉取请求引起注意。

isReapprove

boolean

指示即使投票未更改,仍应处理此批准投票。

isRequired

boolean

指示此拉取请求的必需审阅者。
分支可以具有需要拉取请求的特定审阅者的策略。

profileUrl

string

已弃用 - 未在 ToIdentityRef 的大多数预先存在的实现中使用

reviewerUrl

string

用于检索有关此标识信息的 URL

uniqueName

string

已弃用 - 改用 Domain+PrincipalName

url

string

此 URL 是此图主题的源资源的完整路由。

vote

integer

对拉取请求进行投票:
10 - 批准 5 - 批准并建议 0 - 反对投票 -5 - 等待作者 -10 - 拒绝

votedFor

IdentityRefWithVote[]

此审阅者参与的组或团队。
组和团队可以是拉取请求的审阅者,但不能直接投票。 当组或团队的成员投票时,该投票将汇总到组或团队投票中。 VotedFor 是此类投票的列表。

ItemContent

名称 类型 说明
content

string

contentType

ItemContentType

ItemContentType

名称 类型 说明
base64Encoded

string

rawText

string

ProjectState

项目状态。

名称 类型 说明
all

string

所有项目,不考虑状态,已删除。

createPending

string

项目已排队等待创建,但该过程尚未启动。

deleted

string

已删除项目。

deleting

string

正在删除 Project。

new

string

项目正在创建过程中。

unchanged

string

项目尚未更改。

wellFormed

string

项目已完全创建并可供使用。

ProjectVisibility

项目可见性。

名称 类型 说明
private

string

项目仅对具有显式访问权限的用户可见。

public

string

项目对所有人都可见。

PullRequestAsyncStatus

拉取请求合并的当前状态。

名称 类型 说明
conflicts

string

拉取请求合并由于冲突而失败。

failure

string

拉取请求合并失败。

notSet

string

未设置状态。 默认状态。

queued

string

拉取请求合并已排队。

rejectedByPolicy

string

策略拒绝的拉取请求合并。

succeeded

string

拉取请求合并成功。

PullRequestMergeFailureType

如果拉取请求的任何) 合并,则失败类型 (。

名称 类型 说明
caseSensitive

string

拉取请求合并失败,原因是大小写不匹配。

none

string

未设置类型。 默认类型。

objectTooLarge

string

拉取请求合并失败,因为对象太大。

unknown

string

拉取请求合并失败类型未知。

PullRequestStatus

拉取请求的状态。

名称 类型 说明
abandoned

string

拉取请求被放弃。

active

string

拉取请求处于活动状态。

all

string

用于拉取请求搜索条件以包括所有状态。

completed

string

拉取请求已完成。

notSet

string

状态未设置。 默认状态。

表示 REST 引用链接集合的类。

名称 类型 说明
links

object

链接的只读视图。 由于引用链接是只读的,因此我们只想将其公开为只读。

ResourceRef

名称 类型 说明
id

string

url

string

TeamProjectCollectionReference

TeamProjectCollection 的引用对象。

名称 类型 说明
avatarUrl

string

集合头像 URL。

id

string

集合 ID。

name

string

集合名称。

url

string

集合 REST URL。

TeamProjectReference

表示对 TeamProject 的浅表引用。

名称 类型 说明
abbreviation

string

项目缩写。

defaultTeamImageUrl

string

默认团队标识图像的 URL。

description

string

如果有任何) ,项目说明 (。

id

string

项目标识符。

lastUpdateTime

string

Project 上次更新时间。

name

string

项目名称。

revision

integer

项目修订。

state

ProjectState

项目状态。

url

string

对象完整版本的 URL。

visibility

ProjectVisibility

项目可见性。

VersionControlChangeType

对项所做的更改的类型。

名称 类型 说明
add

string

all

string

branch

string

delete

string

edit

string

encoding

string

lock

string

merge

string

none

string

property

string

rename

string

rollback

string

sourceRename

string

targetRename

string

undelete

string

WebApiTagDefinition

通过网络发送的标记定义的表示形式。

名称 类型 说明
active

boolean

标记定义是否处于活动状态。

id

string

标记定义的 ID。

name

string

标记定义的名称。

url

string

标记定义的资源 URL。