Git 集成源代码格式
Microsoft Fabric 中的项存储在文件夹中。 包含项的文件夹可以位于根目录或子目录中。 将工作区连接到 git 时,请连接到包含这些项的文件夹。 文件夹中的每一项都在其自己的子目录中表示。
目录名称
在 Git 中保存新项时,Git 集成会自动为该项创建目录。
项目录名称基于以下规则:
- 名称的模式为
{display name}.{public facing type}
。 - 如有必要,将对显示名称进行以下更改:
- 无效字符将 替换为 HTML 编号。
- 前导空间替换为其 HTML 编号。
- 尾随空格或点替换为其 HTML 编号。
- 如果该文件夹名称不可用,则使用项的 logicalID (GUID) 的名称,而不是显示名称。
例如,如果在工作区中具有以下项(请注意,第一项和第三项分别具有不可见前导和尾随空格):
Git 存储库中创建以下目录:
- 创建后,Git 集成永远不会更改目录的名称。 即使更改了项的名称,目录名称也保持不变。
- 如果手动更改项目录的名称,请确保将项的依赖项考虑在内。 例如,如果更改语义模型的目录,则应确保更新报表的依赖项文件中语义模型的路径。 请记住,不同 Fabric 体验之间的依赖项位置有所不同。 更改目录名称 不 会导致工作区中的传入更改。
目录内容
项定义文件
每个项的目录都有定义该项的特定必需文件。
Microsoft Fabric 中目前支持以下项:
笔记本文件
笔记本文件夹包含 .py 文件:
有关将 Git 与笔记本集成的说明,请参阅笔记本源代码管理和部署。
分页报表文件
分页报表文件夹包含定义分页报表的 .rdl 文件。 RDL(报表定义语言)是分页报表定义的 XML 表示形式。
有关 RDL 详细信息,请参阅报表定义语言 (RDL)。 有关将 Git 与分页报表集成的说明,请参阅 Git 与分页报表的集成。
报表文件
报表文件夹包含以下文件:
- definition.pbir
- report.json
有关报表文件夹及其内容的完整列表的详细信息,请参阅 Power BI Desktop 项目报表文件夹。
语义模型文件
语义模型文件夹包含以下文件:
- definition.pbidataset
- model.bim 文件 (TMSL 格式)或 \definition 文件夹(TMDL 格式)
有关语义模型文件夹及其内容的完整列表的详细信息,请参阅 Power BI Desktop 项目语义模型文件夹。
自动生成的系统文件
除了项定义文件,每个项目录还包含一两个自动生成的系统文件,具体取决于所使用的版本:
- 版本 1 目录中包含 item.metadata.json 和 item.config.json。 对于 V1,两个文件都必须在目录中。
- 版本 2 目录中包含 .platform。 此文件同时包括 item.metadata.json 和 item.config.json 文件的内容。 如果你有此文件,则不能有另外两个文件。 如果使用版本 1 并提交更改,系统文件会自动更新到此版本。
注意
目录中必须包含 item.metadata.json
和 item.config.json
文件,或者 .platform
文件。 不能包含所有三个文件。
平台文件
在版本 2 中,不是在每个项目目录中有两个源文件,而是 .platform 文件将所有信息合并到一个文件中,其中包含 $schema 属性。 如果你有此文件,则不能有另外两个文件。
{
"version": "2.0",
"$schema": https://developer.microsoft.com/json-schemas/fabric/platform/platformProperties.json,
"config": {
"logicalId": "e553e3b0-0260-4141-a42a-70a24872f88d"
},
"metadata": {
"type": "Report",
"displayName": "All visual types",
"description": "This is a report"
}
}
.platform
文件包含以下属性:
version
:系统文件的版本号。 此号码用于启用向后兼容性。 项的版本号可能不同。logicalId
:自动生成的跨工作区标识符,表示项及其源代码管理表示形式。type
:(字符串)项的类型(语义模型、报表等)displayName
:(字符串)项的名称。description
:(可选字符串)项的说明。
注意
- 类型字段区分大小写。 不要更改自动生成的方式,否则可能会失败。
- 尽管你通常不应更改项目的 logicalId 或显示名称,但如果你通过复制现有项目目录来创建新项目,则可能会例外。 在这种情况下,你确实需要将 logicalId 和显示名称更改为存储库中唯一的内容。