共用方式為


Git - Commit To Git

將工作區中所做的變更認可到連線的遠端分支。
此 API 支援 長時間執行的作業 (LRO)

若要使用此 API,呼叫端的 Git 認證必須使用 更新我的 Git 認證 API 來設定。 您可以使用 取得我的 Git 認證 API 來檢查 Git 認證組態。

您可以選擇認可所有變更,或只認可特定的已變更專案。 若要第一次同步處理工作區,請在 連線初始化連線 API 之後使用此 API。

權限

呼叫者必須具有 參與者 或更高的工作區角色。

必要的委派範圍

Workspace.GitCommit.All。

Microsoft Entra 支援的身分識別

此 API 支援本節中列出的Microsoft 身分識別

身份 支援
使用者 是的
服務主體受控識別 只有在作業中涉及的所有 專案 都支援服務主體時才支援

介面

POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/git/commitToGit

URI 參數

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

string (uuid)

工作區標識碼。

要求本文

名稱 必要 類型 Description
mode True

CommitMode

認可作業的模式。

comment

string

maxLength: 300

此認可的呼叫端無批注。 最大長度為 300 個字元。 如果呼叫端未提供任何批注,請使用預設 Git 提供者批注。

items

ItemIdentifier[]

要認可的特定專案。 這僅適用於選擇性認可模式。 您可以從 Git 狀態 API 擷取專案。

workspaceHead

string

工作區同步處理的完整SHA哈希。 哈希可以從 Git 狀態 API 擷取。

回應

名稱 類型 Description
200 OK

要求成功完成。

202 Accepted

要求已接受,認可至 Git 進行中。

標題

  • Location: string
  • x-ms-operation-id: string
  • Retry-After: integer
Other Status Codes

ErrorResponse

常見的錯誤碼:

  • WorkspaceNotConnectedToGit - 工作區未連線到 git。

  • WorkspaceHasNoCapacityAssigned - 未將容量轉為工作區。

  • WorkspaceHeadMismatch - 要求中的前端不符合系統中的前端。

  • WorkspacePreviousOperationInProgress - 先前的作業仍在進行中。

  • InsufficientPrivileges - 呼叫端沒有足夠的工作區許可權。

  • PrincipalTypeNotSupported - 不支援呼叫端身分識別類型。

範例

Commit all to Git example
Commit selective items to Git example

Commit all to Git example

範例要求

POST https://api.fabric.microsoft.com/v1/workspaces/1565e6a3-c020-4c0c-dda7-92bafe99eec5/git/commitToGit

{
  "mode": "All",
  "workspaceHead": "eaa737b48cda41b37ffefac772ea48f6fed3eac4",
  "comment": "I'm committing all my changes."
}

範例回覆

Location: https://api.fabric.microsoft.com/v1/operations/431e8d7b-4a95-4c02-8ccd-6faef5ba1bd7
x-ms-operation-id: 431e8d7b-4a95-4c02-8ccd-6faef5ba1bd7
Retry-After: 30

Commit selective items to Git example

範例要求

POST https://api.fabric.microsoft.com/v1/workspaces/1565e6a3-c020-4c0c-dda7-92bafe99eec5/git/commitToGit

{
  "mode": "Selective",
  "workspaceHead": "eaa737b48cda41b37ffefac772ea48f6fed3eac4",
  "comment": "I'm committing specific changes.",
  "items": [
    {
      "logicalId": "111e8d7b-4a95-4c02-8ccd-6faef5ba1bd1",
      "objectId": "1153f3b4-dbb8-33c1-a84f-6ae4d776362d"
    },
    {
      "objectId": "7753f3b4-dbb8-44c1-a94f-6ae4d776369e"
    }
  ]
}

範例回覆

Location: https://api.fabric.microsoft.com/v1/operations/431e8d7b-4a95-4c02-8ccd-6faef5ba1bd7
x-ms-operation-id: 431e8d7b-4a95-4c02-8ccd-6faef5ba1bd7
Retry-After: 30

定義

名稱 Description
CommitMode

認可作業的模式。 可能會隨著時間新增其他模式。

CommitToGitRequest

包含認可要求。

ErrorRelatedResource

錯誤相關的資源詳細資料物件。

ErrorResponse

錯誤回應。

ErrorResponseDetails

錯誤回應詳細數據。

ItemIdentifier

包含項目識別碼。 至少必須定義其中一個屬性。

CommitMode

認可作業的模式。 可能會隨著時間新增其他模式。

Description
All

認可所有未認可的變更。 呼叫端不需要提供要認可的項目清單。

Selective

認可具有未認可變更的指定項目清單。

CommitToGitRequest

包含認可要求。

名稱 類型 Description
comment

string

maxLength: 300

此認可的呼叫端無批注。 最大長度為 300 個字元。 如果呼叫端未提供任何批注,請使用預設 Git 提供者批注。

items

ItemIdentifier[]

要認可的特定專案。 這僅適用於選擇性認可模式。 您可以從 Git 狀態 API 擷取專案。

mode

CommitMode

認可作業的模式。

workspaceHead

string

工作區同步處理的完整SHA哈希。 哈希可以從 Git 狀態 API 擷取。

ErrorRelatedResource

錯誤相關的資源詳細資料物件。

名稱 類型 Description
resourceId

string

發生錯誤的資源識別碼。

resourceType

string

發生錯誤的資源類型。

ErrorResponse

錯誤回應。

名稱 類型 Description
errorCode

string

提供錯誤狀況相關信息的特定標識碼,允許服務與其使用者之間的標準化通訊。

message

string

錯誤的人類可讀取表示法。

moreDetails

ErrorResponseDetails[]

其他錯誤詳細數據的清單。

relatedResource

ErrorRelatedResource

錯誤相關的資源詳細數據。

requestId

string

與錯誤相關聯的要求標識碼。

ErrorResponseDetails

錯誤回應詳細數據。

名稱 類型 Description
errorCode

string

提供錯誤狀況相關信息的特定標識碼,允許服務與其使用者之間的標準化通訊。

message

string

錯誤的人類可讀取表示法。

relatedResource

ErrorRelatedResource

錯誤相關的資源詳細數據。

ItemIdentifier

包含項目識別碼。 至少必須定義其中一個屬性。

名稱 類型 Description
logicalId

string (uuid)

項目的邏輯標識碼。 當邏輯識別碼無法使用,因為專案尚未新增至工作區時,您可以使用對象識別碼。

objectId

string (uuid)

項目的物件識別碼。 因為專案從工作區中刪除,因此無法使用物件識別碼時,您可以使用邏輯標識碼。