Поделиться через


Начало работы с интеграцией Git

В этой статье описаны следующие основные задачи в средстве интеграции Git Microsoft Fabric:

Перед началом работы рекомендуется ознакомиться с обзором интеграции с Git .

Предварительные условия

Чтобы интегрировать Git с рабочей областью Microsoft Fabric, необходимо настроить следующие предварительные требования для Fabric и Git.

Предварительные условия для Fabric

Чтобы получить доступ к интеграции Git, вам потребуется емкость Fabric . Емкость Fabric необходима для использования всех поддерживаемых элементов Fabric. Если у вас еще нет пробной версии, зарегистрируйтесь на бесплатную пробную версию. Клиенты, у которых уже есть емкость Power BI Premium, могут использовать такую емкость, но помните, что некоторые номера SKU Power BI поддерживают только элементы Power BI.

Кроме того, на портале администрирования необходимо включить следующие коммутаторы клиента :

Эти параметры можно включить администратором клиента, администратором емкости или администратором рабочей области в зависимости от параметров вашей организации.

Предварительные требования Git

Интеграция Git в настоящее время поддерживается для Azure DevOps и GitHub. Чтобы использовать интеграцию Git с рабочей областью Fabric, вам потребуется следующее в Azure DevOps или GitHub:

Подключение рабочей области к репозиторию Git

Подключение к репозиторию Git

Только администратор рабочей области может подключить рабочую область к репозиторию, но после подключения любой пользователь с разрешением может работать в рабочей области. Если вы не являетесь администратором, обратитесь к администратору за помощью к подключению. Чтобы подключить рабочую область к репозиторию Azure или GitHub, выполните следующие действия.

  1. Войдите в Fabric и откройте рабочую область, к которой вы хотите подключиться.

  2. Перейти к параметрам рабочей области

    Снимок экрана: значок рабочей области с значком параметров рабочей области, отображаемым сверху.

  3. Выберите интеграцию Git.

  4. Выберите поставщика Git. В настоящее время поддерживаются Azure DevOps и GitHub.

Если выбрать Azure DevOps, выберите "Подключиться ", чтобы автоматически войти в учетную запись Azure Repos, зарегистрированную для пользователя Microsoft Entra, вошедшего в Fabric.

Снимок экрана: окно параметров рабочей области с выбранной интеграцией Git.

Подключение к рабочей области

Если рабочая область уже подключена к GitHub, следуйте инструкциям по подключению к общей рабочей области.

  1. В раскрывающемся меню укажите следующие сведения о ветви, к которой вы хотите подключиться:

    • Организация
    • Проект
    • Репозиторий Git.
    • Ветвь (выберите существующую ветвь с помощью раскрывающегося меню или нажмите кнопку +Создать ветвь , чтобы создать новую ветвь. Вы можете подключиться только к одной ветви одновременно.)
    • Папка (введите имя существующей папки или введите имя для создания новой папки. Если оставить имя папки пустым, содержимое создается в корневой папке. Вы можете подключиться только к одной папке одновременно.)

Снимок экрана: подключение к Azure.

Выберите "Подключиться и синхронизировать".

При первоначальной синхронизации, если рабочая область или ветвь Git пуста, содержимое копируется из непустого расположения в пустое. Если рабочая область и ветвь Git содержат содержимое, вам будет предложено выбрать направление синхронизации. Дополнительные сведения об этой начальной синхронизации см. в разделе "Подключение и синхронизация".

После подключения воркспейс отображает информацию о системе контроля версий, позволяющую пользователю видеть подключённую ветвь, состояние каждого элемента в ветви и время последней синхронизации.

Снимок экрана: иконка управления исходными кодами и другая информация Git.

Чтобы рабочая область синхронизировалась с ветвью Git, зафиксируйте все изменения , внесенные в рабочую область в ветвь Git, и обновите рабочую область всякий раз, когда кто-либо создает новые фиксации в ветви Git.

Фиксация изменений в Git

После успешного подключения к папке Git измените рабочую область как обычно. Все сохраненные изменения сохраняются только в рабочей области. Когда вы будете готовы, вы можете зафиксировать изменения в ветви Git или отменить изменения и вернуться к предыдущему состоянию.

Дополнительные сведения о коммитах.

Чтобы зафиксировать изменения в ветви Git, выполните следующие действия.

  1. Перейдите в рабочую область.

  2. Щелкните значок система контроля версий. На этом значке показано количество незафиксированных изменений. Снимок экрана: значок системы управления версиями с номером 2, указывающий на наличие двух изменений для фиксации.

  3. Выберите Изменения в панели управления версиями. Список отображается со всеми измененными элементами и значком, указывающим, является ли элемент новым , измененным , конфликтом или удаленным .

  4. Выберите элементы, которые нужно применить. Чтобы выбрать все элементы, нажмите на верхний флажок.

  5. Добавьте комментарий в поле. Если вы не добавляете комментарий, сообщение по умолчанию добавляется автоматически.

  6. Выберите Подтвердить.

    Снимок экрана: окно менеджера управления версиями с двумя изменениями, выбранными для сохранения.

После применения изменений элементы, которые были зафиксированы, удаляются из списка, а рабочая область указывает на новый коммит, к которому она синхронизирована.

Снимок экрана окна управления версиями, в котором указано, что нет изменений для фиксации.

После успешного завершения фиксации состояние выбранных элементов изменяется с uncommitted на Synced.

Обновление рабочего пространства из Git

Всякий раз, когда кто-либо фиксирует новое изменение в подключенной ветви Git, уведомление появляется в соответствующей рабочей области. Используйте панель управления версиями , чтобы извлечь последние изменения, слияние или возврат в рабочую область и обновить динамические элементы. Изменения в папках также обновляются. Подробнее об обновлении.

Чтобы обновить рабочую область, выполните следующие действия.

  1. Перейдите в рабочую область.
  2. Щелкните значок система контроля версий.
  3. Выберите Обновления в панели управления системой контроля исходного кода. Список отображается со всеми элементами, которые были изменены в ветви с момента последнего обновления.
  4. Выберите "Обновить все".

Снимок экрана панели управления исходным кодом с открытой вкладкой обновлений и выбранной кнопкой обновления всех.

После успешного обновления список элементов удаляется, а рабочая область переключается на новую, с которой она синхронизирована.

Снимок экрана: окно контроля версий с сообщением о том, что вы успешно обновили рабочую область.

После успешного завершения обновления состояние элементов изменяется на Synced.

Отключение рабочей области от Git

Только администратор рабочей области может отключить рабочую область от репозитория Git. Если вы не являетесь администратором, обратитесь к администратору за помощью в отключении. Если вы являетесь администратором и хотите отключить репозиторий, выполните следующие действия.

  1. Перейти к параметрам рабочей области
  2. Выберите интеграцию с Git
  3. Выберите пункт Отключить рабочую область
  4. Нажмите кнопку "Отключиться ", чтобы подтвердить.

Разрешения

Действия, которые можно предпринять в рабочей области, зависят от разрешений, которые есть в рабочей области и репозитории Git. Более подробное обсуждение разрешений см. в разделе "Разрешения".

Рекомендации и ограничения

Общие ограничения интеграции Git

  • Метод проверки подлинности в Fabric должен быть не менее строгим, чем метод проверки подлинности для Git. Например, если Git требует многофакторной проверки подлинности, Структура должна также требовать многофакторную проверку подлинности.
  • В настоящее время наборы данных Power BI, подключенные к службам Analysis Services, не поддерживаются.
  • Если вы используете идентификатор рабочей области в одном артефакте и фиксируете его в Git, его можно обновить обратно в рабочую область fabric только в той рабочей области, которая подключена к тому же идентификатору. Будьте осторожны, так как это также влияет на такие функции, как разветвление.
  • Подмодулы не поддерживаются.
  • Независимые облака не поддерживаются.
  • Учетная запись Azure DevOps должна быть зарегистрирована для того же пользователя, который использует рабочую область Fabric.
  • Azure DevOps не поддерживается, если включена проверка политики условного доступа по IP .
  • Администратор клиента должен включить перекрестный экспорт , если рабочая область и репозиторий Git находятся в двух разных географических регионах.
  • Если ваша организация настроила условный доступ, убедитесь, что служба Power BI имеет те же условия настройки для надлежащего функционирования аутентификации.
  • Размер коммита ограничен 125 МБ.

Ограничения GitHub Enterprise

Некоторые версии и параметры GitHub Enterprise не поддерживаются. Например:

  • GitHub Enterprise Cloud с локализацией данных (ghe.com)
  • GitHub Enterprise Server с пользовательским доменом не поддерживается, даже если экземпляр доступен публично.
  • Github Enterprise Server, размещенный в частной сети
  • Список разрешенных IP-адресов

Ограничения рабочей области

  • Только администратор рабочей области может управлять подключениями к репозиторию Git , таким как подключение, отключение или добавление ветви.
    После подключения любой пользователь с разрешением может работать в рабочей области.
  • Рабочие области с установленными приложениями-шаблонами не могут быть подключены к Git.
  • MyWorkspace не может подключиться к поставщику Git.

Ограничения ветвей и папок

  • Максимальная длина имени ветви составляет 244 символа.
  • Максимальная длина полного пути для имен файлов составляет 250 символов. Более длинные имена не работают.
  • Максимальный размер файла составляет 25 МБ.
  • Структура папок поддерживается до 10 уровней.
  • Скачивание отчета или набора данных в виде PBIX из службы после их развертывания с интеграцией Git не рекомендуется, так как результаты ненадежны. Мы рекомендуем использовать PowerBI Desktop для скачивания отчетов и наборов данных в виде PBIX.
  • Если отображаемое имя элемента имеет какие-либо из этих характеристик, папка Git будет переименована в логический идентификатор (GUID) и тип.
    • Имеет более 256 символов
    • Заканчивается точкой или пробелом
    • Содержит любые запрещенные символы, как описано в ограничениях имени каталога
  • При подключении рабочей области с папками к Git необходимо зафиксировать изменения в репозитории Git, если эта структура папок отличается.

Ограничения имени каталога

  • Имя каталога, подключающегося к репозиторию Git, имеет следующие ограничения именования:

    • Имя каталога не может начинаться или заканчиваться пробелом или вкладкой.
    • Имя каталога не может содержать следующие символы: "/:<>\*|
  • Папка элемента (папка, содержащая файлы элементов), не может содержать ни одного из следующих символов: ":<>\*?|". Если вы переименовываете папку в одну из этих символов, Git не может подключиться или синхронизироваться с рабочей областью и возникает ошибка.

Ограничения на расширение

  • Для ветвления требуются разрешения, перечисленные в таблице разрешений.
  • Для выполнения этого действия должны быть доступны соответствующие ресурсы.
  • Все ограничения именования рабочей области и ветви применяются при создании ответвления в новую рабочую область.
  • В новой рабочей области доступны только элементы, поддерживаемые Git.
  • В списке связанных ветвей отображаются только ветви и рабочие области, которые у вас есть разрешение на просмотр.
  • Интеграция Git должна быть включена.
  • При выходе из ветвления создается новая ветвь, а параметры исходной ветви не копируются. Настройте все параметры или определения, чтобы обеспечить соответствие новым политикам вашей организации.
  • При переходе в существующее рабочее пространство:
    • Целевая рабочая область должна поддерживать подключение Git.
    • Пользователь должен быть администратором целевой рабочей области.
    • Целевая рабочая область должна иметь достаточную вместимость.
    • Рабочая область не может иметь приложения-шаблоны.
  • Обратите внимание, что при выходе из рабочей области все элементы, которые не сохраняются в Git, могут быть потеряны. Рекомендуется зафиксировать все элементы, которые необходимо сохранить перед ветвлением.

Ограничения синхронизации и коммита

  • Одновременно можно синхронизировать только в одном направлении. Вы не можете зафиксировать и обновить одновременно.
  • Метки конфиденциальности не поддерживаются, и экспорт элементов с метками конфиденциальности может быть отключен. Чтобы зафиксировать элементы, имеющие метки конфиденциальности, без применения этих меток, обратитесь к своему администратору за помощью.
  • Работает с ограниченными элементами. Неподдерживаемые элементы в папке игнорируются.
  • Повторение имен не допускается. Даже если Power BI разрешает дублирование имен, обновление, фиксация изменений или отмена действия не выполняется.
  • B2B не поддерживается.
  • Разрешение конфликтов частично выполняется в Git.
  • Во время процесса фиксации в Git служба Fabric удаляет файлы в папке элемента , которая не входит в определение элемента. Не связанные файлы, не входящие в папку элемента, не удаляются.
  • После фиксации изменений вы можете заметить некоторые непредвиденные изменения в элементе, которые вы не вносили. Эти изменения семантически незначительны и могут произойти по нескольким причинам. Например:
    • Изменение файла определения элемента вручную. Эти изменения допустимы, но могут отличаться от того, что сделано через редакторы. Например, если вы переименуете столбец семантической модели в Git и импортируете это изменение в рабочую область, при следующей фиксации изменений в семантической модели файл bim будет отмечен как измененный, а модифицированный столбец перемещен в конец массива columns. Это связано с тем, что подсистема AS, создающая файлы bim , отправляет переименованные столбцы в конец массива. Это изменение не влияет на способ работы элемента.
    • Коммит файла, использующего CRLF-разрывы строк. Служба использует разрывы строк LF (перевод строки). Если у вас есть файлы в репозитории Git с разрывами строк CRLF, при фиксации из сервиса эти файлы изменяются на LF. Например, если открыть отчет на рабочем столе, сохраните файл проекта (PBIP) и отправьте его в Git с помощью CRLF.
  • Обновление семантической модели с помощью API расширенного обновления вызывает дифф Git после каждого обновления.