在本教程中,你将完成将数据加载到工作区并将部署管道与 Git 集成一起使用的整个过程,以便与他人协作开发、测试和发布数据及报表。
注意
某些 Git 集成项处于预览状态。 有关详细信息,请参阅 支持项的列表。
先决条件
若要将 Git 与 Microsoft Fabric 工作区集成,需要在 Fabric 和 Git 中设置以下先决条件。
Fabric 先决条件
若要访问 Git 集成功能,需要 Fabric 容量。 需要使用结构容量才能使用所有受支持的 Fabric 项。 如果还没有试用版, 请注册免费试用版。 已有 Power BI Premium 容量的客户可以使用该容量,但请记住 ,某些 Power BI SKU 仅支持 Power BI 项。
此外,必须从管理门户启用以下 租户切换 :
- 用户可以创建 Fabric 项
- 用户可以将工作区项与其 Git 存储库同步
- 创建工作区 (仅当想要分支到新工作区时)。
- 用户可以将工作区项与 GitHub 存储库同步:仅适用于 GitHub 用户
租户管理员、容量管理员或工作区管理员可以根据 组织的设置启用这些开关。
Git 先决条件
Azure DevOps 和 GitHub 目前支持 Git 集成。 若要使用 Git 与 Fabric 工作区集成,需要在 Azure DevOps 或 GitHub 中满足以下先决条件:
- 向使用 Fabric 工作区的同一用户注册的活动 Azure 帐户。 创建免费帐户。
- 将 FoodSales.pbix 文件下载到可以编辑的 Git 存储库中。 我们会在本教程中使用此示例文件。 或者,如果你愿意,也可以使用自己的语义模型和报表。
如果已有具有数据的工作区的管理员权限,可以跳到 步骤 3。
步骤 1:创建高级工作区
若要创建新工作区并为其分配许可证,请执行以下操作:
从 Power BI 体验的左侧导航栏中,选择“工作区”>“+ 新建工作区”。
将工作区 命名为 FoodSalesWS。
(可选)添加说明。
展开“ 高级 ”部分以显示 许可证模式。
选择 “试用版 ”或“ 高级容量”。
选择“应用”。
有关创建工作区的详细信息,请参阅 “创建工作区”。
步骤 2:将内容加载到工作区中
可以从 OneDrive、SharePoint 或本地文件上传内容。 在本教程中,我们将加载 .pbix 文件。
在顶部菜单栏中,选择“ 上传 > 浏览”。
浏览到之前下载的 FoodSales.pbix 文件的位置,或加载自己的示例语义模型和报表。
你现在有一个工作区,其中包含供你和你的团队使用的内容。
编辑凭据 - 仅第一次需要
在创建部署管道之前,需要设置凭据。 每个语义模型只需执行一次此步骤。 为此语义模型设置凭据后,您无需重复设置。
转到“设置”>“Power BI 设置”。
选择“语义模型”>“数据源凭据”>“编辑凭据”。
将 身份验证 方法设置为 匿名、 隐私级别 设置为 “公共”,然后取消选中“ 跳过测试连接 ”框。
选择“登录”。 测试连接并设置凭据。
现在可以创建部署管道。
步骤 3:将团队的开发工作区连接到 git
此工作区由整个团队共享,团队的每个成员都可以对其进行编辑。 通过将此工作区连接到 git,可以跟踪所有更改,并在必要时还原回以前的版本。 当所有更改合并到此共享分支时,将使用部署管道将此工作区部署到生产环境。
在 Git 集成简介中详细了解版本控制。
让我们将此工作区连接到 Git 存储库的主分支,以便所有团队成员都可以对其进行编辑并创建拉取请求。 如果使用 Azure DevOps 存储库,请执行以下步骤。 如果使用 GitHub 存储库,请按照 将工作区连接到 GitHub 存储库中的说明进行作。
转到右上角的“工作区设置”。
选择“git 集成”。
选择“Azure DevOps”。 你会自动登录到 Azure Repos 帐户,该帐户已注册到登录到工作区的 Microsoft Entra 用户。
在下拉菜单中,指定要连接到的分支的以下详细信息:
选择 “连接”并同步。
连接后,工作区将显示有关源代码管理的信息,可用于查看连接的分支、分支中每个项的状态以及上次同步的时间。“源代码管理”图标将显示 0
,因为工作区 Git 存储库中的项是相同的。
现在,工作区已与 Git 存储库的主分支同步,以便轻松跟踪更改。
有关连接到 git 的详细信息,请参阅 将工作区连接到 Azure 存储库。
步骤 4:创建部署管道
为了与他人共享此工作区并将其用于测试和开发的各个阶段,我们需要创建部署管道。 可以在 部署管道简介中了解部署管道的工作原理。 若要创建部署管道并将工作区分配到开发阶段,请遵照以下步骤操作:
在工作区主页中,选择“ 创建部署管道”。
为管道 命名 FoodSalesDP,提供说明(可选),然后选择“ 下一步”。
接受管道的默认三个阶段,然后选择“创建”。
将 FoodSalesWS 工作区分配到开发阶段。
部署管道的开发阶段显示一个语义模型、一个报表和一个仪表板。 其他阶段都是空的。
可以在 部署管道概述中详细了解如何创建部署管道。
步骤 5:将内容部署到其他阶段
现在,将内容部署到管道的其他阶段。
在部署内容视图的开发阶段,选择“ 部署”。
确认要将内容部署到测试阶段。
绿色复选图标表示两个阶段的内容是一致的,因为您已部署了管道的完整内容。
将内容从测试阶段部署到生产阶段。
若要在任何阶段刷新语义模型,请选择每个阶段的摘要卡中语义模型图标旁边的刷新按钮。
此部署管道由整个团队共享。 每个团队成员都可以在开发阶段编辑语义模型和报表。 当团队准备好测试更改时,他们将内容部署到测试阶段。 当团队准备好将更改发布到生产环境时,他们会将内容部署到生产阶段。
有关部署内容的详细信息,请参阅 “部署内容”。
步骤 6:创建独立工作区
为了避免编辑共享工作区和干扰其他团队成员的更改,每个团队成员都应创建自己的独立工作区进行工作,直到他们准备好与团队共享更改为止。
从“源代码管理”菜单的“分支”选项卡中,选择当前分支名称旁边的向下箭头,然后选择“扩展延伸到新工作区”。
指定有关分支和工作区的以下详细信息。 新分支根据连接到当前工作区的分支自动创建。
- 分支名称(对于本教程,将其命名为 MyFoodEdits)
- 工作区名称(在本教程中,将其命名 为My_FoodSales)
选择“扩展延伸”。
选择 “连接”并同步。
Fabric 将创建新工作区并将其同步到新分支。 你将自动进入新工作区,但同步可能需要几分钟时间。
新工作区现在包含 Git 存储库文件夹的内容。 请注意,它不包含 .pbix 文件。 由于 不支持 .pbix 文件,因此在同步时,此文件不会复制到 Git 存储库。
使用此工作区对语义模型和报表进行更改,直到准备好与团队共享这些更改。
步骤 7:编辑工作区。
分支工作区同步完成后,可以通过创建、删除或编辑项来修改工作区。 在本教程中,我们将更改语义模型列的格式。 可以在 Power BI Desktop 或 数据模型中编辑工作区。 在本教程中,我们将从数据模型编辑工作区。
在语义模型工作区中,选择语义模型省略号(三个点)>“打开数据模型”。
注意
如果“ 打开数据模型 ”已禁用,请转到 工作区设置 > Power BI > 常规 并启用 数据模型设置。
从 Order_details 表中,选择“ 折扣”。
在 “属性 ”窗格中,将 “格式 ”从 “常规 ”更改为 “百分比”。
步骤 8:提交更改
若要将此更改从工作区提交到 Git 分支,请返回到工作区主页。
源代码管理图标现在显示 1
,因为工作区中的一项已更改,但未提交到 Git 存储库。 FoodSales 语义模型显示状态为“未提交”。
选择源代码管理图标以查看 Git 存储库中更改的项。 语义模型显示状态为“已修改”。
选择要提交的项并添加可选消息。
选择“提交”。
语义模型的 Git 状态更改为“已同步”,工作区和 Git 存储库处于同步状态。
步骤 9:创建 PR 并合并
在 Git 存储库 中,创建拉取请求 以将 MyFoodEdits 分支与 主 分支合并。
可以手动或自动完成此步骤:
选择“创建拉取请求”。
为拉取请求提供标题、说明和任何其他信息。 然后选择“创建”。
-
将更改合并到主分支后,你可以根据需要安全地删除工作区。 它不会自动删除。
步骤 10:更新共享工作区
返回到连接到部署管道开发阶段的共享工作区(我们在 步骤 1 中创建的工作区),并刷新页面。
源代码管理图标现在显示 1,因为 Git 存储库中的一项已更改,并且不同于 FoodSales 工作区中的项。 FoodSales 语义模型显示状态为“需要更新”。
可以手动或自动更新工作区:
语义模型的 Git 状态更改为“已同步”,工作区与主 Git 分支同步。
步骤 11:比较部署管道中的阶段
选择“查看部署管道”,将开发阶段的内容与测试阶段的内容进行比较。
请注意阶段之间的橙色
X
图标,指示自上次部署以来,某个阶段中的内容发生了更改。选择向下箭头 >“查看更改 ”以查看更改。 “变更审查”界面显示两个阶段中语义模型之间的差异。
查看更改并关闭窗口。
有关比较部署管道中的阶段的详细信息,请参阅 部署管道中的比较阶段。
步骤 12:部署到测试阶段
如果对更改感到满意,请使用 在步骤 5 中使用的相同过程将更改部署到测试和/或生产阶段。
总结
本教程介绍了如何使用部署管道和 Git 集成来管理工作区中应用、报表或其他内容的生命周期。
具体而言,你已了解如何:
- 在 Fabric 中设置工作区并添加用于管理其生命周期的内容。
- 应用 Git 最佳做法以单独工作并与团队成员协作处理更改。
- 结合 Git 和部署管道,实现高效的端到端发布过程。