通过


使用代码连接和断开 Dataverse 与 Git 存储库的连接

使用ConnectToGitDisconnectFromGitAPI,以编程方式将您的 Microsoft Dataverse 环境与 Git 版本控制集成。 使用这些 API,可以将单个解决方案或整个环境连接到 Azure DevOps 上托管的 Git 存储库,并通过代码管理这些连接。

重要

Azure DevOps 目前是唯一受支持的 Git 提供程序。

先决条件

使用这些 API 之前,请确保具备:

  • 访问 Microsoft Dataverse 环境
  • 系统管理员权限
  • 对 Git 存储库的读取和写入访问权限

ConnectToGit API

在 Dataverse 解决方案或环境与 Git 存储库之间创建连接。 使用此连接,可以管理 Dataverse 组件的源代码管理。

参数

API ConnectToGit 接受以下参数:

参数 类型 必需 说明
GitFolder String 是的 要将解决方案或环境绑定到的文件夹的名称。
Branch String 是的 要连接到的分支的名称。
ConnectionType 整数 指定要连接的目标。 请参阅 ConnectionType 参数
GitProvider 整数 Git 提供商。 请参阅 GitProvider 参数
Organization String 要连接到的组织的名称。
Project String 要连接到的项目的名称。
Repository String 要连接到的存储库的名称。
RootFolder String 在解决方案范围内,所有解决方案所在的根文件夹名称。
SolutionUniqueName String 要连接到 git 的解决方案的唯一名称。
UpstreamBranch String 要连接到的上游分支的名称。 默认为存储库的默认分支。

ConnectionType 参数

参数 ConnectionType 控制是连接到整个 Dataverse 环境还是特定解决方案。

价值 标签 说明
0 解决方案 将特定的 Dataverse 解决方案连接到 Git。
1 环境 将整个 Dataverse 环境连接到 Git。

GitProvider 参数

使用 GitProvider 参数指定正在使用的 Git 提供程序的类型,即 Azure DevOps 或 GitHub。

价值 标签 说明
0 Azure DevOps 适用于 Azure DevOps 上托管的存储库
1 GitHub 用于托管在 GitHub 上的存储库

DisconnectFromGit API

从 Dataverse 解决方案或环境中删除 Git 连接,并禁用源代码管理集成。

参数

DisconnectFromGit API 只有一个参数。

参数 类型 必需 说明
SolutionUniqueName String 要从 Git 断开连接的解决方案的唯一名称。 若省略此项,将断开所有解决方案或该环境的连接。

其他信息

下面是在调用 DisconnectFromGit时要指定的几个参数值选项。

  • 断开某一解决方案的连接:提供SolutionUniqueName方法以断开特定解决方案的连接。
  • 断开所有解决方案:不提供参数以断开所有解决方案级别的连接。
  • 断开环境连接:不提供任何参数以断开环境级别的连接。

示例

以下示例介绍使用 ConnectToGitDisconnectFromGit API 的方案:

将整个 Dataverse 环境连接到 Azure DevOps 存储库

此连接为所有环境级配置和组件启用源代码管理。

不要与此连接使用这些参数:

  • RootFolder
  • SolutionUniqueName
  • UpstreamBranch

此示例演示如何使用 ConnectToGit 操作 将整个 Dataverse 环境连接到 Azure DevOps 存储库。

请求

POST [Organization URI]/api/data/v9.2/ConnectToGit HTTP/1.1
Accept: application/json
Content-Type: application/json; charset=utf-8
OData-MaxVersion: 4.0
OData-Version: 4.0

{
   "GitFolder": "yourGitfolderName",
   "Branch": "yourBranchName",
   "ConnectionType": 1,
   "GitProvider": 0,
   "Organization": "yourOrganizationName",
   "Project": "yourProjectName",
   "Repository": "yourRepositoryName"
}

响应

HTTP/1.1 204 No Content
OData-Version: 4.0

了解如何调用 Web API 操作

断开整个 Dataverse 环境与 Git 源代码管理的连接

此操作将删除环境级 Git 连接。 请勿在此操作中使用SolutionUniqueName参数。 Dataverse 会自动标识和删除环境级 Git 连接。

此示例演示如何使用 DisconnectFromGit 操作 断开整个 Dataverse 环境与 Git 源代码管理的连接。

请求

POST [Organization URI]/api/data/v9.2/DisconnectFromGit HTTP/1.1
Accept: application/json
Content-Type: application/json; charset=utf-8
OData-MaxVersion: 4.0
OData-Version: 4.0

响应

HTTP/1.1 204 No Content
OData-Version: 4.0

了解如何调用 Web API 操作

将第一个解决方案连接到 Git 存储库

此连接会为环境中的第一个解决方案建立存储库链接及文件夹结构,用于解决方案级别的源代码控制。

需要包括这些参数的值才能指定解决方案:

  • RootFolder
  • SolutionUniqueName

此示例演示如何使用 ConnectToGit 操作 将第一个解决方案连接到 Git 存储库。

请求

POST [Organization URI]/api/data/v9.2/ConnectToGit HTTP/1.1
Accept: application/json
Content-Type: application/json; charset=utf-8
OData-MaxVersion: 4.0
OData-Version: 4.0

{
   "GitFolder": "yourGitfolderName",
   "Branch": "yourBranchName",
   "ConnectionType": 1,
   "GitProvider": 0,
   "Organization": "yourOrganizationName",
   "Project": "yourProjectName",
   "Repository": "yourRepositoryName",
   "RootFolder": "yourRootFolderName",
   "SolutionUniqueName": "yourSolutionUniqueName"
}

响应

HTTP/1.1 204 No Content
OData-Version: 4.0

了解如何调用 Web API 操作

连接初始解决方案后,将额外解决方案连接到同一 Git 存储库

连接第一个解决方案后,只需要该解决方案的特定参数。 从初始连接继承了存储库连接信息。

仅设置以下参数:

  • SolutionUniqueName
  • Branch
  • GitFolder

重要

您必须先连接第一个方案,然后此功能才能正常工作。 请参阅 将第一个解决方案连接到 Git 存储库

此示例演示如何使用 ConnectToGit 操作 将后续解决方案连接到 Git 存储库。

请求

POST [Organization URI]/api/data/v9.2/ConnectToGit HTTP/1.1
Accept: application/json
Content-Type: application/json; charset=utf-8
OData-MaxVersion: 4.0
OData-Version: 4.0

{
   "GitFolder": "yourGitfolderName",
   "Branch": "yourBranchName",
   "SolutionUniqueName": "yourSolutionUniqueName"
}

响应

HTTP/1.1 204 No Content
OData-Version: 4.0

了解如何调用 Web API 操作

断开特定解决方案与 Git 源代码管理的连接,同时使其他解决方案保持连接

使用此方法可删除一个解决方案的源代码管理,而不会影响其他解决方案。

此示例演示如何使用 DisconnectFromGit 操作 删除一个解决方案的源代码管理,而不会影响其他解决方案。

请求

POST [Organization URI]/api/data/v9.2/DisconnectFromGit HTTP/1.1
Accept: application/json
Content-Type: application/json; charset=utf-8
OData-MaxVersion: 4.0
OData-Version: 4.0

{
   "SolutionUniqueName": "yourSolutionUniqueName"
}

响应

HTTP/1.1 204 No Content
OData-Version: 4.0

了解如何调用 Web API 操作

错误处理

ConnectToGitDisconnectFromGit API 在成功完成后都不会返回一个值。 API 失败时,将返回错误。

常见错误场景包括:

  • 无效凭据:请确保您对 Git 提供商的身份验证是有效的。
  • 找不到存储库:验证组织、项目和存储库名称。
  • 权限被拒绝:确保 Dataverse 帐户具有源代码管理权限。
  • 找不到解决方案:验证 SolutionUniqueName 环境中是否存在。
  • 分支不存在:确认存储库中存在指定的分支。

支持和其他资源

有关源代码管理与 Dataverse 的集成的详细信息,请参阅: