Git - Connect
将特定工作区连接到 git 存储库和分支。
此作不会在工作区与连接的分支之间同步。 若要完成同步,请使用 “初始化连接” 作,并遵循 “提交到 Git ”作或 “从 Git 更新” 作。
若要开始使用 GitHub,请参阅: Git 集成入门。
若要获取连接 ID,请参阅 Automate Git 集成。
权限
调用方必须具有工作区的 管理员 角色。
对于配置的连接 Git 凭据,调用方必须具有连接的权限。
所需的委派范围
Workspace.ReadWrite.All
局限性
使用自动凭据源时,GitHub 提供程序和服务主体会阻止此 API。
Microsoft Entra 支持的标识
此 API 支持本节中列出的Microsoft 标识。
| 身份 | 支持 |
|---|---|
| 用户 | 是的 |
| 服务主体 和 托管标识 | 仅当 myGitCredentials.source 为 ConfiguredConnection 时受支持 |
接口
POST https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/git/connect
URI 参数
| 名称 | 在 | 必需 | 类型 | 说明 |
|---|---|---|---|---|
|
workspace
|
path | True |
string (uuid) |
工作区 ID。 |
请求正文
| 名称 | 必需 | 类型 | 说明 |
|---|---|---|---|
| gitProviderDetails | True | GitProviderDetails: |
Git 提供程序详细信息。 |
| myGitCredentials | GitCredentials: |
用户特定的 Git 凭据,用于向 GitProvider 进行身份验证。 这些凭据不会与其他工作区参与者共享。 对于 GitHub,此属性是必需的。 对于 AzureDevOps,此属性是可选的。 如果未设置,则默认值为 AutomaticGitCredentials。 |
响应
| 名称 | 类型 | 说明 |
|---|---|---|
| 200 OK |
请求成功完成。 |
|
| Other Status Codes |
常见错误代码:
|
示例
|
Connect a workspace to Azure Dev |
|
Connect a workspace to Azure Dev |
|
Connect a workspace to Git |
Connect a workspace to Azure DevOps example
示例请求
POST https://api.fabric.microsoft.com/v1/workspaces/1565e6a3-c020-4c0c-dda7-92bafe99eec5/git/connect
{
"gitProviderDetails": {
"organizationName": "Test Organization",
"projectName": "Test Project",
"gitProviderType": "AzureDevOps",
"repositoryName": "Test Repo",
"branchName": "Test Branch",
"directoryName": "Test Directory"
}
}
示例响应
Connect a workspace to Azure DevOps using configured connection example
示例请求
POST https://api.fabric.microsoft.com/v1/workspaces/1565e6a3-c020-4c0c-dda7-92bafe99eec5/git/connect
{
"gitProviderDetails": {
"organizationName": "Test Organization",
"projectName": "Test Project",
"gitProviderType": "AzureDevOps",
"repositoryName": "Test Repo",
"branchName": "Test Branch",
"directoryName": "Test Directory/Test Subdirectory"
},
"myGitCredentials": {
"source": "ConfiguredConnection",
"connectionId": "3f2504e0-4f89-11d3-9a0c-0305e82c3301"
}
}
示例响应
Connect a workspace to GitHub example
示例请求
POST https://api.fabric.microsoft.com/v1/workspaces/1565e6a3-c020-4c0c-dda7-92bafe99eec5/git/connect
{
"gitProviderDetails": {
"ownerName": "Test Owner",
"gitProviderType": "GitHub",
"repositoryName": "Test Repo",
"branchName": "Test Branch",
"directoryName": "Test Directory/Test Subdirectory"
},
"myGitCredentials": {
"source": "ConfiguredConnection",
"connectionId": "3f2504e0-4f89-11d3-9a0c-0305e82c3301"
}
}
示例响应
定义
| 名称 | 说明 |
|---|---|
|
Automatic |
自动 Git 凭据。 |
|
Azure |
Azure DevOps 提供程序详细信息。 |
|
Configured |
配置的连接 Git 凭据。 |
|
Error |
与错误相关的资源详细信息对象。 |
|
Error |
错误响应。 |
|
Error |
错误响应详细信息。 |
|
Git |
包含 Git connect 请求数据。 |
|
Git |
Git 凭据源。 可能会随着时间的推移添加其他 Git 凭据源。 |
|
Git |
GitHub 提供程序详细信息。 |
|
Git |
Git 提供程序类型。 可能会随着时间的推移添加其他提供程序类型。 |
AutomaticGitCredentials
自动 Git 凭据。
| 名称 | 类型 | 说明 |
|---|---|---|
| source |
string:
Automatic |
Git 凭据源。 |
AzureDevOpsDetails
Azure DevOps 提供程序详细信息。
| 名称 | 类型 | 说明 |
|---|---|---|
| branchName |
string maxLength: 250 |
分支名称。 最大长度为 250 个字符。 |
| directoryName |
string maxLength: 256 |
目录的相对路径。 最大长度为 256 个字符。 |
| gitProviderType |
string:
Azure |
Git 提供程序类型。 可能会随着时间的推移添加其他提供程序类型。 |
| organizationName |
string maxLength: 100 |
组织名称。 最大长度为 100 个字符。 |
| projectName |
string maxLength: 100 |
项目名称。 最大长度为 100 个字符。 |
| repositoryName |
string maxLength: 128 |
存储库名称。 最大长度为 128 个字符。 |
ConfiguredConnectionGitCredentials
配置的连接 Git 凭据。
| 名称 | 类型 | 说明 |
|---|---|---|
| connectionId |
string (uuid) |
连接的对象 ID。 |
| source |
string:
Configured |
Git 凭据源。 |
ErrorRelatedResource
与错误相关的资源详细信息对象。
| 名称 | 类型 | 说明 |
|---|---|---|
| resourceId |
string |
错误中涉及的资源 ID。 |
| resourceType |
string |
错误中涉及的资源的类型。 |
ErrorResponse
错误响应。
| 名称 | 类型 | 说明 |
|---|---|---|
| errorCode |
string |
提供有关错误条件的信息的特定标识符,允许服务与其用户之间的标准化通信。 |
| message |
string |
错误的人工可读表示形式。 |
| moreDetails |
其他错误详细信息的列表。 |
|
| relatedResource |
与错误相关的资源详细信息。 |
|
| requestId |
string |
与错误关联的请求的 ID。 |
ErrorResponseDetails
错误响应详细信息。
| 名称 | 类型 | 说明 |
|---|---|---|
| errorCode |
string |
提供有关错误条件的信息的特定标识符,允许服务与其用户之间的标准化通信。 |
| message |
string |
错误的人工可读表示形式。 |
| relatedResource |
与错误相关的资源详细信息。 |
GitConnectRequest
包含 Git connect 请求数据。
| 名称 | 类型 | 说明 |
|---|---|---|
| gitProviderDetails | GitProviderDetails: |
Git 提供程序详细信息。 |
| myGitCredentials | GitCredentials: |
用户特定的 Git 凭据,用于向 GitProvider 进行身份验证。 这些凭据不会与其他工作区参与者共享。 对于 GitHub,此属性是必需的。 对于 AzureDevOps,此属性是可选的。 如果未设置,则默认值为 AutomaticGitCredentials。 |
GitCredentialsSource
Git 凭据源。 可能会随着时间的推移添加其他 Git 凭据源。
| 值 | 说明 |
|---|---|
| ConfiguredConnection |
Git 凭据是通过配置的连接获取的。 |
| Automatic |
系统会使用默认凭据(如果可用)自动获取 Git 凭据。 |
| None |
未配置 Git 凭据。 |
GitHubDetails
GitHub 提供程序详细信息。
| 名称 | 类型 | 说明 |
|---|---|---|
| branchName |
string maxLength: 250 |
分支名称。 最大长度为 250 个字符。 |
| directoryName |
string maxLength: 256 |
目录的相对路径。 最大长度为 256 个字符。 |
| gitProviderType |
string:
Git |
Git 提供程序类型。 可能会随着时间的推移添加其他提供程序类型。 |
| ownerName |
string maxLength: 100 |
所有者名称。 最大长度为 100 个字符。 |
| repositoryName |
string maxLength: 128 |
存储库名称。 最大长度为 128 个字符。 |
GitProviderType
Git 提供程序类型。 可能会随着时间的推移添加其他提供程序类型。
| 值 | 说明 |
|---|---|
| AzureDevOps |
Azure DevOps 提供程序 |
| GitHub |
GitHub 提供程序 |