有关 Dataverse 和 Git 集成(预览)的常见问题解答

[本文为预发布文档,可能会发生变化。]

本文包括关于 Git 与 Microsoft Dataverse 集成的常见问题的解答。

重要提示

  • 这是一项预览功能。
  • 预览功能不适合生产使用且功能可能受限。 这些功能在正式发布之前已经可用,以便客户可以抢先体验并提供反馈。

什么是 Git 与 Dataverse 集成?

Dataverse 与 Git 集成提供了一种在 Git 存储库中存储解决方案及其组件的方法。 解决方案及其组件以人类可读格式存储在存储库中,让您可以在源代码管理系统中轻松地搜索、跟踪更改以及管理解决方案。

使用 Git 与 Dataverse 集成有什么先决条件?

您需要一个具有必要权限的 Power Platform 环境来连接到 Azure DevOps,并将您的环境绑定到 Azure DevOps 中的项目。 它需要 Dataverse 环境中的系统管理员角色才能绑定到 Git。

需要为 Azure DevOps 与源代码交互的用户提供订阅和许可证。 这些用户在您的 Git 存储库中需要参与者权限。

Dataverse 环境必须是托管环境,在此功能正式发布 (GA) 时会强制执行这一要求。

Dataverse 中的源代码管理集成还支持哪些其他源代码管理系统?

Git 是 Dataverse 中的源代码管理集成唯一支持的源代码管理技术,目前只支持 Azure DevOps Git 存储库。

使用 Git 与 Dataverse 集成需要哪些许可证?

您需要一个适合的高级 Power Apps 许可证来使用托管环境,以及一个 Azure DevOps 许可证来与源代码存储库交互。

为什么我收到消息“检索所选存储库的默认分支失败。 选择默认分支以允许创建新分支?“

请确保您的 Azure DevOps Git 存储库已初始化。 默认情况下,新项目和存储库有未初始化的存储库,您必须手动初始化存储库来创建默认分支。

我是否要将我的开发、测试和生产环境与源代码集成,然后使用分支合并将配置推送到另一个环境?

此功能仅能将 Dataverse 开发环境与源代码管理关联,这样您的所有解决方案自定义项都保留于源中。 通过构建托管解决方案并将其作为托管解决方案部署,将这些自定义引入上游环境。

我如何使用分支?

该功能当前使用一个分支,该分支在您将环境或解决方案绑定到存储库时指定。 您可以继续使用 Git 操作来使用其他分支,包括提交拉取请求 (PR) 以及与其他分支合并。

为什么不同组件没有非托管和托管解决方案表示形式?

此功能可处理非托管层,且无法与托管层一同使用。 解决方案系统消除了非托管和托管文件之间组件表示形式上的差异,现在支持所有组件使用一种表示形式。

为什么我的源代码文件是 YAML,而解决方案导出仍然主要使用 XML?

该功能使用 YAML 表示解决方案内容,因为更易于读取、理解并简化合并。

如何从源代码部署解决方案?

当前,部署需要从源环境导出新的解决方案,并且将该解决方案部署到目标环境。

如果我不想将编译后的二进制文件签入源代码,我该如何使用代码优先组件进行开发?

目前,您仍然可以使用不同的文件夹创作不同的组件,如 Power Apps component framework 控件和插件(类似于您今天的做法),但从环境提交时,二进制文件会被签入源代码。

我可以使用 API 绑定到 Git,然后触发提交和拉取?

Power Platform API 当前仅供内部使用。

现在我能否以受支持的方式直接在源代码中进行更改?

对于直接修改解决方案自定义项的支持不会通过此功能改变。 我们的建议是继续直接在环境中进行更改,然后将这些更改提交到源代码控制中。 允许直接在源中对本地化的标签进行更改。 也支持使用我们的开发人员工具支持的代码第一组件,其中包括插件、PCF 控件和 Web 资源。

当我收到错误“活动失败并出现不受监视的异常:Microsoft.Crm.CrmException:超出 26214400 字节的最大请求大小”时,我该怎么办?

超过 Azure DevOps API 的限制。 超出限制通常是因为您导入了一个大型非托管解决方案,并且提交总数超出了该限制。 我们建议您从解决方案中删除解决方案组件,直到您可以成功提交,然后重新添加那些已删除的组件,在此过程中进行提交,直到您成功。 请注意具有大型解决方案文件的组件,包括 Web 资源等媒体文件或具有嵌入式媒体的画布应用程序,因为如果这些组件接近该限制,则可能需要一次添加一个。 将所有解决方案组件重新放回解决方案中且提交成功后,可以考虑再次重新导入非托管解决方案,以确保不会错过重新添加任何组件。

Dataverse Git 集成概述

Dataverse Git 集成设置

源代码管理存储库操作