Git - Update From Git

使用推送到连接的分支的提交更新工作区。
此 API 支持 长时间运行的作(LRO)

若要使用此 API,必须使用 更新我的 Git 凭据 API 配置调用方 Git 凭据。 可以使用 “获取我的 Git 凭据 API”来检查 Git 凭据配置。

更新仅影响这些提交中已更改的工作区中的项。 如果在 连接初始化连接 API 后调用,它将执行整个工作区的完整更新。

权限

调用方必须具有 参与者 或更高版本的工作区角色。

所需的委派范围

Workspace.GitUpdate.All

Microsoft Entra 支持的标识

此 API 支持本节中列出的Microsoft 标识

身份 支持
用户 是的
服务主体托管标识 仅当作涉及的所有 都支持服务主体时才受支持

接口

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

URI 参数

名称 必需 类型 说明
workspaceId
path True

string (uuid)

工作区 ID。

请求正文

名称 必需 类型 说明
remoteCommitHash True

string

远程完整 SHA 提交哈希。

conflictResolution

WorkspaceConflictResolution

在 Git作的更新中使用的冲突解决。 如果项目存在冲突且未指定冲突解决,则更新作将不会启动。

options

UpdateOptions

在 Git作的更新中使用的选项

workspaceHead

string

工作区要同步到的完整 SHA 哈希。 此值仅在初始化连接后为 null。 在其他情况下,系统将验证给定值是否与系统已知的头部保持一致。

响应

名称 类型 说明
200 OK

请求成功完成。

202 Accepted

请求已接受,正在从 Git 进行更新。

标头

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

ErrorResponse

常见错误代码:

  • WorkspaceNotConnectedToGit - 工作区未连接到 git。

  • WorkspaceHasNoCapacityAssigned - 没有分配给工作区的容量。

  • WorkspaceHeadMismatch - 请求中的头与系统中的头不匹配。

  • WorkspacePreviousOperationInProgress - 以前的作仍在进行中。

  • MissingDependency - 更新作中缺少依赖项。

  • PotentialDuplicateDisplayNameAndType - 更新作将创建重复的显示名称和类型。

  • DependencyDeletionFailed - 更新作将删除硬依赖项。

  • InsufficientPrivileges - 调用方没有足够的工作区权限。

  • PrincipalTypeNotSupported - 不支持调用方标识类型。

示例

Update a workspace using data from a Git example

示例请求

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

{
  "workspaceHead": "eaa737b48cda41b37ffefac772ea48f6fed3eac4",
  "remoteCommitHash": "7d03b2918bf6aa62f96d0a4307293f3853201705",
  "conflictResolution": {
    "conflictResolutionType": "Workspace",
    "conflictResolutionPolicy": "PreferWorkspace"
  },
  "options": {
    "allowOverrideItems": true
  }
}

示例响应

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

定义

名称 说明
ConflictResolutionPolicy

冲突解决策略。 可能会随着时间的推移添加其他冲突解决策略。

ConflictResolutionType

冲突解决类型。 可能会随着时间的推移添加其他冲突解决类型。

ErrorRelatedResource

与错误相关的资源详细信息对象。

ErrorResponse

错误响应。

ErrorResponseDetails

错误响应详细信息。

UpdateFromGitRequest

包含 Git 请求数据的更新。

UpdateOptions

包含从 Git 为更新启用的选项。

WorkspaceConflictResolution

基本冲突解决数据。

ConflictResolutionPolicy

冲突解决策略。 可能会随着时间的推移添加其他冲突解决策略。

说明
PreferRemote

首选远程 Git 端内容。

PreferWorkspace

首选工作区端内容。

ConflictResolutionType

冲突解决类型。 可能会随着时间的推移添加其他冲突解决类型。

说明
Workspace

表示工作区级别的冲突解决。

ErrorRelatedResource

与错误相关的资源详细信息对象。

名称 类型 说明
resourceId

string

错误中涉及的资源 ID。

resourceType

string

错误中涉及的资源的类型。

ErrorResponse

错误响应。

名称 类型 说明
errorCode

string

提供有关错误条件的信息的特定标识符,允许服务与其用户之间的标准化通信。

message

string

错误的人工可读表示形式。

moreDetails

ErrorResponseDetails[]

其他错误详细信息的列表。

relatedResource

ErrorRelatedResource

与错误相关的资源详细信息。

requestId

string

与错误关联的请求的 ID。

ErrorResponseDetails

错误响应详细信息。

名称 类型 说明
errorCode

string

提供有关错误条件的信息的特定标识符,允许服务与其用户之间的标准化通信。

message

string

错误的人工可读表示形式。

relatedResource

ErrorRelatedResource

与错误相关的资源详细信息。

UpdateFromGitRequest

包含 Git 请求数据的更新。

名称 类型 说明
conflictResolution

WorkspaceConflictResolution

在 Git作的更新中使用的冲突解决。 如果项目存在冲突且未指定冲突解决,则更新作将不会启动。

options

UpdateOptions

在 Git作的更新中使用的选项

remoteCommitHash

string

远程完整 SHA 提交哈希。

workspaceHead

string

工作区要同步到的完整 SHA 哈希。 此值仅在初始化连接后为 null。 在其他情况下,系统将验证给定值是否与系统已知的头部保持一致。

UpdateOptions

包含从 Git 为更新启用的选项。

名称 类型 说明
allowOverrideItems

boolean

用户在 Git 过程中同意在更新过程中替代传入项。 当传入项存在且未指定允许替代项或作为 false 提供时,更新作将不会启动。 默认值为 false。

WorkspaceConflictResolution

基本冲突解决数据。

名称 类型 说明
conflictResolutionPolicy

ConflictResolutionPolicy

冲突解决策略。 可能会随着时间的推移添加其他冲突解决策略。

conflictResolutionType

ConflictResolutionType

冲突解决类型。 可能会随着时间的推移添加其他冲突解决类型。