共用方式為


Pull Requests - Get Pull Request

擷取提取要求。

GET https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/pullrequests/{pullRequestId}?api-version=7.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

URI 參數

名稱 位於 必要 類型 Description
organization
path True

string

Azure DevOps 組織的名稱。

pullRequestId
path True

integer (int32)

要擷取之提取要求的標識碼。

repositoryId
path True

string

提取要求目標分支的存放庫標識碼。

project
path

string

項目識別碼或項目名稱

api-version
query True

string

要使用的 API 版本。 這應該設定為 『7.1』 以使用此版本的 API。

$skip
query

integer (int32)

未使用。

$top
query

integer (int32)

未使用。

includeCommits
query

boolean

如果為 true,則會使用相關聯的認可傳回提取要求。

includeWorkItemRefs
query

boolean

如果為 true,則會使用相關聯的工作項目參考傳回提取要求。

maxCommentLength
query

integer (int32)

未使用。

回應

名稱 類型 Description
200 OK

GitPullRequest

成功作業

安全性

oauth2

類型: oauth2
Flow: accessCode
授權 URL: https://app.vssps.visualstudio.com/oauth2/authorize&response_type=Assertion
權杖 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

範圍

名稱 Description
vso.code 授與讀取有關認可、變更集、分支和其他版本控制成品之原始程式碼和元數據的能力。 也授與搜尋程式代碼的能力,並透過服務攔截取得版本控制事件的通知。

定義

名稱 Description
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

名稱 類型 Description
changeId

integer (int32)

變更群組內的變更標識碼。

changeType

VersionControlChangeType

對專案所做的變更類型。

item

string (T)

目前的版本。

newContent

ItemContent

變更之後的項目內容。

newContentTemplate

GitTemplate

推送新變更時要使用的新內容範本。

originalPath

string

如果與目前路徑不同,則為專案的原始路徑。

sourceServerItem

string

伺服器上的項目路徑。

url

string

要擷取專案的URL。

GitCommitRef

提供描述 Git 認可和相關聯元數據的屬性。

名稱 類型 Description
_links

ReferenceLinks

相關 REST 參考連結的集合。

author

GitUserDate

認可作者。

changeCounts

ChangeCountDictionary

認可中包含的變更類型計數(編輯、刪除等)。

changes

GitChange[]

認可隨附之變更的列舉。

comment

string

認可的批註或訊息。

commentTruncated

boolean

指出批註是否從完整的 Git 認可批注訊息中截斷。

commitId

string

認可標識碼 (SHA-1)。

commitTooManyChanges

boolean

表示認可包含太多變更無法顯示

committer

GitUserDate

認可者。

parents

string[]

這個認可之父認可標識碼的列舉。

push

GitPushRef

與此認可相關聯的推送。

remoteUrl

string

認可的遠端 URL 路徑。

statuses

GitStatus[]

服務與延伸模組的狀態元數據清單,這些元數據可能會使其他資訊與認可產生關聯。

url

string

此資源的 REST URL。

workItems

ResourceRef[]

與此認可相關聯的工作項目清單。

GitForkRef

分支參考的相關信息。

名稱 類型 Description
_links

ReferenceLinks

表示 REST 參考連結集合的類別。

creator

IdentityRef

isLocked

boolean

isLockedBy

IdentityRef

name

string

objectId

string

peeledObjectId

string

repository

GitRepository

分支的存放庫標識碼。

statuses

GitStatus[]

這個類別包含張貼狀態之服務/延伸模組的元數據。

url

string

GitPullRequest

表示與提取要求相關聯的所有數據。

名稱 類型 Description
_links

ReferenceLinks

其他相關對象的連結。

artifactId

string

可唯一識別此提取要求的字串。 若要產生提取要求的成品標識符,請使用此範本:vstfs:///Git/PullRequestId/{projectId}/{repositoryId}/{pullRequestId}

autoCompleteSetBy

IdentityRef

如果已設定,就會為此提取要求啟用自動完成,而這是啟用它的身分識別。

closedBy

IdentityRef

關閉提取要求的使用者。

closedDate

string (date-time)

提取要求關閉的日期(已完成、已放棄或外部合併)。

codeReviewId

integer (int32)

提取要求的程式代碼檢閱標識碼。 在內部使用。

commits

GitCommitRef[]

提取要求中包含的認可。

completionOptions

GitPullRequestCompletionOptions

會影響提取要求在完成時合併方式的選項。

completionQueueTime

string (date-time)

提取要求進入要完成佇列的最近日期。 在內部使用。

createdBy

IdentityRef

建立提取要求的使用者身分識別。

creationDate

string (date-time)

建立提取要求的日期。

description

string

提取要求的描述。

forkSource

GitForkRef

如果這是分支的PR,這將會包含其來源的相關信息。

hasMultipleMergeBases

boolean

多個合併基底警告

isDraft

boolean

草稿/WIP 提取要求。

labels

WebApiTagDefinition[]

與提取要求相關聯的標籤。

lastMergeCommit

GitCommitRef

最近提取要求合併的認可。 如果空白,則最近的合併正在進行中或失敗。

lastMergeSourceCommit

GitCommitRef

上次提取要求合併時,來源分支前端的認可。

lastMergeTargetCommit

GitCommitRef

在上次提取要求合併時,目標分支前端的認可。

mergeFailureMessage

string

如果設定,提取要求合併會因為這個原因而失敗。

mergeFailureType

PullRequestMergeFailureType

提取要求合併的失敗類型(如果有的話)。

mergeId

string (uuid)

用來執行提取要求合併之作業的標識碼。 在內部使用。

mergeOptions

GitPullRequestMergeOptions

提取要求合併執行時所使用的選項。 這些與完成選項不同,因為完成只會發生一次,而且每次提取要求的來源分支變更時,都會執行新的合併。

mergeStatus

PullRequestAsyncStatus

提取要求合併的目前狀態。

pullRequestId

integer (int32)

提取要求的標識碼。

remoteUrl

string

在內部使用。

repository

GitRepository

包含提取要求目標分支的存放庫。

reviewers

IdentityRefWithVote[]

提取要求上的檢閱者清單及其投票狀態。

sourceRefName

string

提取要求的來源分支名稱。

status

PullRequestStatus

提取要求的狀態。

supportsIterations

boolean

如果為 true,則此提取要求支援多個反覆專案。 反覆項目支援表示可以檢閱提取要求來源分支的個別推播,並在一次反覆專案中留下的批注會追蹤未來反覆專案。

targetRefName

string

提取要求的目標分支名稱。

title

string

提取要求的標題。

url

string

在內部使用。

workItemRefs

ResourceRef[]

與此提取要求相關聯的任何工作項目參考。

GitPullRequestCompletionOptions

關於提取要求應如何完成的喜好設定。

名稱 類型 Description
autoCompleteIgnoreConfigIds

integer[] (int32)

任何原則組態標識碼的清單,其自動完成不應該等待。 僅適用於選擇性原則(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

建立提取要求合併時所使用的選項。

名稱 類型 Description
conflictAuthorshipCommits

boolean

如果為 true,合併期間套用的衝突解決將會放入個別認可中,以保留 git 責任的撰寫資訊等等。

detectRenameFalsePositives

boolean

disableRenames

boolean

如果為 true,則不會在合併期間執行重新命名偵測。

GitPullRequestMergeStrategy

指定在完成期間用來合併提取要求的策略。 如果 MergeStrategy 未設定為任何值,則如果 SquashMerge == false,則會建立 no-FF 合併。 如果 MergeStrategy 未設定為任何值,則如果 SquashMerge == true,提取要求認可將會遭到壓縮。 SquashMerge 屬性已被取代。 建議您在所有情況下明確設定 MergeStrategy。 如果為 MergeStrategy 提供明確的值,則會忽略 SquashMerge 屬性。

Description
noFastForward

雙父、無快速向前合併。 來源分支不會變更。 這是預設行為。

rebase

在目標分支 HEAD 認可之上重新建置來源分支,並快速轉送目標分支。 來源分支會在重新基底作業期間更新。

rebaseMerge

在目標分支 HEAD 認可之上重新建置來源分支,並建立雙父、無快速向前合併。 來源分支會在重新基底作業期間更新。

squash

將提取要求的所有變更放入單一父代認可。

GitPushRef

名稱 類型 Description
_links

ReferenceLinks

表示 REST 參考連結集合的類別。

date

string (date-time)

pushId

integer (int32)

pushedBy

IdentityRef

url

string

GitRepository

名稱 類型 Description
_links

ReferenceLinks

表示 REST 參考連結集合的類別。

defaultBranch

string

id

string (uuid)

isDisabled

boolean

如果停用存放庫,則為 True。 否則為 False。

isFork

boolean

True 是表示 如果存放庫建立為分叉。

isInMaintenance

boolean

如果存放庫處於維護中,則為 True。 否則為 False。

name

string

parentRepository

GitRepositoryRef

project

TeamProjectReference

表示 TeamProject 的淺層參考。

remoteUrl

string

size

integer (int64)

存放庫的壓縮大小 (位元元組) 。

sshUrl

string

url

string

validRemoteUrls

string[]

webUrl

string

GitRepositoryRef

名稱 類型 Description
collection

TeamProjectCollectionReference

此分支所在的Team專案集合

id

string (uuid)

isFork

boolean

True 是表示 如果存放庫建立為分叉

name

string

project

TeamProjectReference

表示 TeamProject 的淺層參考。

remoteUrl

string

sshUrl

string

url

string

GitStatus

這個類別包含張貼狀態之服務/延伸模組的元數據。

名稱 類型 Description
_links

ReferenceLinks

參考連結。

context

GitStatusContext

狀態的內容。

createdBy

IdentityRef

建立狀態的身分識別。

creationDate

string (date-time)

狀態的建立日期和時間。

description

string

狀態描述。 通常描述狀態的目前狀態。

id

integer (int32)

狀態標識碼。

state

GitStatusState

狀態的狀態。

targetUrl

string

具有狀態詳細數據的 URL。

updatedDate

string (date-time)

狀態的上次更新日期和時間。

GitStatusContext

可唯一識別狀態的狀態內容。

名稱 類型 Description
genre

string

狀態的內容類型。 通常產生狀態的服務/工具名稱可以是空的。

name

string

狀態的名稱識別碼不可為 Null 或空白。

GitStatusState

狀態的狀態。

Description
error

發生錯誤的狀態。

failed

狀態失敗。

notApplicable

狀態不適用於目標物件。

notSet

未設定狀態。 默認狀態。

pending

狀態擱置中。

succeeded

狀態成功。

GitTemplate

名稱 類型 Description
name

string

範本的名稱

type

string

範本的類型

GitUserDate

Git 作業的使用者資訊和日期。

名稱 類型 Description
date

string (date-time)

Git 作業的日期。

email

string

執行 Git 作業之使用者的電子郵件位址。

imageUrl

string

用戶的虛擬人偶 URL。

name

string

執行 Git 作業的用戶名稱。

IdentityRef

名稱 類型 Description
_links

ReferenceLinks

此欄位包含圖表主旨的相關零或更多有趣連結。 您可以叫用這些連結,以取得此圖表主題的其他關聯性或更詳細的資訊。

descriptor

string

描述元是在系統執行時參考圖表主旨的主要方式。 此欄位會唯一識別帳戶和組織之間的相同圖表主題。

directoryAlias

string

已淘汰 - 查詢 IdentityRef “_links” 字典中參考的 Graph 使用者,即可擷取

displayName

string

這是圖形主體的非唯一顯示名稱。 若要變更此欄位,您必須在來源提供者中變更其值。

id

string

imageUrl

string

已淘汰 - 可在 IdentityRef “_links” 字典的 “avatar” 專案中取得

inactive

boolean

已淘汰 - 可藉由查詢 GraphUser “_links” 字典的 “membershipState” 專案中參考的 Graph 成員資格狀態來擷取

isAadIdentity

boolean

已淘汰 - 可以從描述元的主體類型推斷 (Descriptor.IsAadUserType/Descriptor.IsAadGroupType)

isContainer

boolean

已淘汰 - 可以從描述元的主體類型推斷 (Descriptor.IsGroupType)

isDeletedInOrigin

boolean

profileUrl

string

已淘汰 - 未在 ToIdentityRef 的大部分預先存在實作中使用

uniqueName

string

已淘汰 - 請改用 Domain+PrincipalName

url

string

此 URL 是此圖表主體來源資源的完整路由。

IdentityRefWithVote

身分識別資訊,包括提取要求的投票。

名稱 類型 Description
_links

ReferenceLinks

此欄位包含圖表主旨的相關零或更多有趣連結。 您可以叫用這些連結,以取得此圖表主題的其他關聯性或更詳細的資訊。

descriptor

string

描述元是在系統執行時參考圖表主旨的主要方式。 此欄位會唯一識別帳戶和組織之間的相同圖表主題。

directoryAlias

string

已淘汰 - 查詢 IdentityRef “_links” 字典中參考的 Graph 使用者,即可擷取

displayName

string

這是圖形主體的非唯一顯示名稱。 若要變更此欄位,您必須在來源提供者中變更其值。

hasDeclined

boolean

指出此檢閱者是否已拒絕檢閱此提取要求。

id

string

imageUrl

string

已淘汰 - 可在 IdentityRef “_links” 字典的 “avatar” 專案中取得

inactive

boolean

已淘汰 - 可藉由查詢 GraphUser “_links” 字典的 “membershipState” 專案中參考的 Graph 成員資格狀態來擷取

isAadIdentity

boolean

已淘汰 - 可以從描述元的主體類型推斷 (Descriptor.IsAadUserType/Descriptor.IsAadGroupType)

isContainer

boolean

已淘汰 - 可以從描述元的主體類型推斷 (Descriptor.IsGroupType)

isDeletedInOrigin

boolean

isFlagged

boolean

指出此檢閱者是否標幟為注意此提取要求。

isReapprove

boolean

指出即使投票沒有變更,仍應該處理此核准投票。

isRequired

boolean

指出此提取要求是否為必要檢閱者。
分支可以有要求提取要求需要特定檢閱者的原則。

profileUrl

string

已淘汰 - 未在 ToIdentityRef 的大部分預先存在實作中使用

reviewerUrl

string

擷取此身分識別相關信息的URL

uniqueName

string

已淘汰 - 請改用 Domain+PrincipalName

url

string

此 URL 是此圖表主體來源資源的完整路由。

vote

integer (int16)

對提取要求進行投票:
10 - 核准 5 - 已核准建議 0 - 沒有投票 -5 - 等待作者 -10 - 拒絕

votedFor

IdentityRefWithVote[]

此檢閱者參與的群組或小組。
群組和小組可以是提取要求的檢閱者,但無法直接投票。 當群組或小組的成員投票時,該投票會匯總到群組或小組投票中。 VotedFor 是這類選票的清單。

ItemContent

名稱 類型 Description
content

string

contentType

ItemContentType

ItemContentType

Description
base64Encoded
rawText

ProjectState

項目狀態。

Description
all

所有專案,不論狀態為何,但已刪除除外。

createPending

Project 已排入佇列以建立,但程式尚未啟動。

deleted

項目已刪除。

deleting

Project 正在刪除。

new

Project 正在建立中。

unchanged

專案尚未變更。

wellFormed

專案已完全建立並可供使用。

ProjectVisibility

項目可見度。

Description
private

只有具有明確存取權的使用者才能看到專案。

public

所有專案都可以看到。

PullRequestAsyncStatus

提取要求合併的目前狀態。

Description
conflicts

提取要求合併因衝突而失敗。

failure

提取要求合併失敗。

notSet

未設定狀態。 默認狀態。

queued

提取要求合併已排入佇列。

rejectedByPolicy

原則拒絕提取要求合併。

succeeded

提取要求合併成功。

PullRequestMergeFailureType

提取要求合併的失敗類型(如果有的話)。

Description
caseSensitive

提取要求合併因案例不符而失敗。

none

未設定類型。 默認類型。

objectTooLarge

提取要求合併失敗,因為物件太大。

unknown

提取要求合併失敗類型未知。

PullRequestStatus

提取要求的狀態。

Description
abandoned

已放棄提取要求。

active

提取要求為作用中。

all

用於提取要求搜尋準則,以包含所有狀態。

completed

提取要求已完成。

notSet

未設定狀態。 默認狀態。

表示 REST 參考連結集合的類別。

名稱 類型 Description
links

object

連結的只讀檢視。 因為參考連結是只讀的,所以我們只想要將其公開為只讀。

ResourceRef

名稱 類型 Description
id

string

url

string

TeamProjectCollectionReference

TeamProjectCollection 的參考物件。

名稱 類型 Description
avatarUrl

string

集合虛擬人偶 URL。

id

string (uuid)

集合標識碼。

name

string

集合名稱。

url

string

集合 REST URL。

TeamProjectReference

表示 TeamProject 的淺層參考。

名稱 類型 Description
abbreviation

string

項目縮寫。

defaultTeamImageUrl

string

默認小組身分識別影像的 URL。

description

string

專案的描述(如果有的話)。

id

string (uuid)

項目標識碼。

lastUpdateTime

string (date-time)

專案上次更新時間。

name

string

專案名稱。

revision

integer (int64)

專案修訂。

state

ProjectState

項目狀態。

url

string

物件完整版本的 URL。

visibility

ProjectVisibility

項目可見度。

VersionControlChangeType

對專案所做的變更類型。

Description
add
all
branch
delete
edit
encoding
lock
merge
none
property
rename
rollback
sourceRename
targetRename
undelete

WebApiTagDefinition

透過網路傳送的標記定義表示。

名稱 類型 Description
active

boolean

標籤定義是否為使用中。

id

string (uuid)

標籤定義的識別碼。

name

string

標籤定義的名稱。

url

string

標籤定義的資源 URL。