開始使用 Git 整合
本文章將引導您在 Microsoft Fabric 的 Git 整合工具中完成下列基本工作:
建議您先閱讀 Git 整合 的 概觀,再開始。
必要條件
若要將 Git 與 Microsoft Fabric 工作區整合,需要先為 Fabric 和 Git 設定下列必要條件。
Fabric 先決條件
若要存取 Git 整合功能,您需要 Fabric 容量。 需要 Fabric 容量才能使用所有受支援的 Fabric 元件。 如果您還沒有帳戶,請註冊免費試用。 已經有 Power BI Premium 容量的客戶可以使用該容量,但請記住,某些 Power BI SKU 僅支援 Power BI 專案。
此外,必須從管理入口網站啟用下列租用戶選項:
視貴組織的設定而定,租用戶管理員、容量管理員或工作區管理員可以啟用這些交換器。
Git 必要條件
Azure DevOps 和 GitHub 目前支援 Git 整合。 若要將 Git 整合與 Fabric 工作區搭配使用,Azure DevOps 或 GitHub 中需要滿足下列必備條件:
- 有效的 Azure 帳戶需要由正在使用 Fabric 工作區的同一位使用者註冊。 建立免費帳戶。
- 存取現有的存放庫。
將工作區連線至 Git 存放庫
連線至 Git 存放庫
僅工作區管理員可以將工作區連線到存放庫,但一旦連線,具有權限的任何人都可以在工作區中工作。 如果您不是管理員,請向管理員尋求連線方面的協助。 若要將工作區連線至 Azure 或 GitHub 存放庫,請遵循下列步驟:
登入 Fabric 並瀏覽至您想要連線的工作區。
前往 [工作區設定]
選取 Git 整合。
選取 Git 提供者。 目前支援 Azure DevOps 和 GitHub。
如果您選取 Azure DevOps,請選取連線,以自動登入與已登入 Fabric 的 Microsoft Entra 使用者相關聯的 Azure Repos 帳戶。
連線到工作區
如果工作區已連線到 GitHub,請遵循連線到共用工作區的指示。
從下拉式功能表中指定您要連線之分支的下列詳細資料:
選取 [連線和同步]。
在初始同步處理期間,如果工作區或 Git 分支為空,則會將內容從非空位置拷貝到空位置。 如果工作區和 Git 分支均有內容,系統會詢問同步應遵循的方向。 如需此初始同步處理的詳細資訊,請參閱<連線和同步>。
連線之後,工作區會顯示原始檔控制的相關信息,可讓用戶檢視已連線的分支、分支中每個項目的狀態,以及上次同步的時間。
若要讓工作區與 Git 分支保持同步,請將您在工作區中所做的所有變更認可至 Git 分支,並在任何人建立新的變更認可至 Git 分支時更新至工作區。
將變更提交至 git
成功連線到 Git 資料夾之後,請如往常一樣編輯工作區。 您儲存的任何變更只會儲存在工作區中。 準備就緒之後,您可以將變更認可至 Git 分支,也可以復原變更並還原為先前的狀態。
進一步了解提交。
若要將變更認可至 Git 分支,請遵循下列步驟:
移至工作區。
選取 [原始檔控制] 圖示。 此圖示會顯示未認可的變更數目。
在 [原始碼控制] 面板中,選擇 變更。 隨即出現一個清單,其中包含您更改的所有項目和指示項目狀態 (新的
、已修改
、衝突
或已刪除
) 的圖示。
選取您要提交的項目。 若要選取所有項目,請選取頂端方塊。
在框中新增註解。 如果您未新增註解,系統會自動新增預設訊息。
選擇 提交。
提交變更後,已提交的變更項目會從清單中移除,工作區會指向已同步的新提交。
成功完成認可之後,所選取的項目的狀態會從 [未認可] 變更為 [已同步]。
從 Git 更新工作區
每當有人提交新的變更到連結的 Git 分支時,相關工作區中就會顯示通知。 使用 原始檔控制面板 來拉取最新的變更、合併或還原到工作區,以更新即時項目。 對資料夾的變更也會進行更新。 閱讀更多有關更新的資訊。
若要更新工作區,請按照下列步驟執行:
- 前往工作區。
- 選取 [原始檔控制] 圖示。
- 從 [原始檔控制] 面板選取 更新。 隨即出現一個清單,其中包含自上次更新以來分支中已變更的所有項目。
- 選擇全部更新。
更新成功後,會移除清單,而工作區將指向同步至的新工作區。
成功完成更新之後,項目的狀態會變更為 [已同步]。
中斷工作區與 Git 的連線
只有工作區管理員可以中斷工作區與 Git 存放庫的連線。 如果您不是管理員,請向管理員尋求中斷連線方面的協助。 如果您是管理員,並且想要中斷存放庫的連線,請按照下列步驟執行:
- 前往 [工作區設定]
- 選取 Git 整合功能。
- 選擇中斷工作區連線
- 再次選取 [中斷連線] 以確認。
權限
您可以對工作區採取的動作取決於您在工作區和 Git 存放庫中擁有的權限。 若要了解有關權限的詳細資訊,請參閱<權限>。
考量與限制
Git 整合的常見限制
- Fabric 中的驗證方法必須至少與 Git 的驗證方法一樣嚴格。 例如,如果 Git 需要多重要素驗證,Fabric 也需要多重要素驗證。
- 目前不支援連線至 Analysis Services 的 Power BI 資料集。
- 已安裝範本應用程式的工作區無法連線到 Git。
- 不支援子模組。
- 不支援主權雲端服務。
- Azure DevOps 帳戶必須由使用 Fabric 工作區的相同使用者註冊。
- 如果已啟用 啟用IP條件式存取原則驗證,則不支援 Azure DevOps。
- 如果工作區和 Git 存放庫位於兩個不同的地理區域,租用戶管理員必須啟用跨地區匯出。
- 如果您的組織設定 條件式存取,請確定 Power BI 服務 設定了相同的 條件,讓驗證如預期般運作。
- 提交大小限制為 125 MB。
GitHub Enterprise 限制
不支援某些 GitHub Enterprise 設定。 例如:
- IP 允許清單
- 私人網路
- 自訂網域
工作區限制
分支和資料夾限制
- 分支名稱長度上限為 244 個字元。
- 檔案名稱的完整路徑長度上限為 250 個字元。 較長的名稱會失敗。
- 檔案大小上限為 25 MB。
- 資料夾結構最多可達到10個層級深。
- 使用 Git 整合部署報表/資料集之後,您無法從服務中將它們下載為 .pbix。
- 如果項目的顯示名稱具有下列任何特性,Git 資料夾會重新命名為邏輯識別碼 (Guid) 並輸入:
- 字元數超過 256 個
- 以 結尾。 或空格
- 包含任何禁止字元,如目錄名稱限制中所述
- 當您將具有資料夾的工作區連接至 Git 時,如果 資料夾結構 不同,則必須將變更提交至 Git 存放庫。
目錄名稱限制
線上至 Git 存放庫的目錄名稱具有下列命名限制:
- 目錄名稱不能以空格或標籤開頭或結尾。
- 目錄名稱不能包含下列任何字元:「/:<>\*?|
項目資料夾(包含項目檔案的資料夾)不能包含下列任何字元:「:<>\*?|。 如果您將資料夾重新命名為包含這些字元之一的名稱,則 Git 無法連線或同步處理工作區,並發生錯誤。
分支限制
- 分支操作需要權限資料表中所列的權限。
- 必須有可用的容量才能執行此動作。
- 所有工作區和分支命名限制都會在分支至新的工作區時套用。
- 新的工作區中僅 Git 支援的項目可用。
- 相關的分支清單僅顯示您有權檢視的分支和工作區。
- 必須啟用 Git 整合。
- 擴展分支時,會建立新的分支,並且不會複製原始分支中的設定。 調整任何設定或定義,以確保新符合貴組織的原則。
- 分支至現有的工作區時:
- 目標工作區必須支援 Git 連線。
- 用戶必須是目標工作區的管理員。
- 目標工作區必須具有容量。
- 工作區不能有範本應用程式。
- 請注意,當您分支至工作區時,未儲存至 Git 的任何項目都會遺失。 建議您在分支之前提交任何您想要保留的項目。
同步與提交限制
- 一次只能在一個方向上同步。 無法同時提交和更新。
- 不支援敏感度標籤,並且可能會停用匯出具有敏感度標籤的項目。 若要提交目前未加上敏感度標籤的項目,請向管理員尋求協助。
- 適用於受限制的項目。 資料夾中不受支援的項目會略過。
- 不允許複製名稱。 即使 Power BI 允許重複名稱,更新、認可或復原動作也會失敗。
- 不支援 B2B。
- 衝突解決有一部分是在 Git 中完成。
- 在認可至 Git 程序運作期間,Fabric 服務會刪除不屬於項目定義之項目資料夾內的檔案。 不會刪除不在項目資料夾中的非相關檔案。
- 提交變更之後,您可能會注意到項目有一些您自己未做的非預期變更。 這些變更在語意上無關緊要,且可能存在多個原因。 例如:
- 手動變更項目定義檔案。 這些變更有效,但可能不同於透過編輯器完成的變更。 例如,如果您在 Git 中重新命名語意模型資料行,並將這項變更匯入至工作區,您下次認可對語意模型的變更時,bim 檔案將會註冊為已變更,並且所修改的資料行會被推送至
columns
陣列背面。 這是因為產生 bim 檔案的 AS 引擎會將重新命名的資料行推送至陣列結尾。 這項變更不會影響項目的運作方式。 - 提交使用 CRLF 換行符號的檔案。 此服務使用 LF (行分隔符)。 如果您的 Git 存放庫中有使用 CRLF 換行符號的項目檔案,當您使用此服務提交這些檔案時,換行符號會變更為 LF。 例如,如果您在桌面中開啟報表,請儲存項目檔 (.pbip),並使用 CRLF將其上傳至 Git。
- 手動變更項目定義檔案。 這些變更有效,但可能不同於透過編輯器完成的變更。 例如,如果您在 Git 中重新命名語意模型資料行,並將這項變更匯入至工作區,您下次認可對語意模型的變更時,bim 檔案將會註冊為已變更,並且所修改的資料行會被推送至
- 若使用增強式重新整理 API 重新整理語意模型,系統會在每次重新整理之後產生 Git 差異。