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


Контроль версий в Synapse Studio

По умолчанию Synapse Studio непосредственно взаимодействует с сервисом Synapse. Если у вас есть потребность в совместной работе с помощью Git для системы управления версиями, Synapse Studio позволяет связать рабочую область с репозиторием Git, Azure DevOps или GitHub.

В этой статье описывается настройка и работа в рабочей области Synapse с включенным репозиторием Git. Также мы обсудим ряд рекомендаций и руководство по устранению неполадок.

Примечание.

Чтобы использовать GitHub в Azure Gov и Microsoft Azure под управлением 21Vianet, вы можете перенести собственное приложение GitHub OAuth в Synapse Studio для интеграции с git. Процесс настройки аналогичен работе с ADF. Вы можете воспользоваться блогом с объявлениями.

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

  • Пользователи должны иметь роль участника Azure (Azure RBAC) или более высокую роль в рабочей области Synapse для настройки, изменения параметров и отключения репозитория Git в Synapse.

Настройка репозитория Git в Synapse Studio

После запуска Synapse Studio можно настроить репозиторий Git в рабочей области. Рабочая область Synapse может быть связана только с одним репозиторием Git одновременно.

Метод конфигурации 1: глобальная панель

В глобальной строке Synapse Studio в верхней части данных, разработке, интеграции и управлении центрами выберите раскрывающееся меню Synapse Live и выберите репозиторий кода.

Настройте параметры репозитория кода через модуль авторинга

Метод конфигурации 2. Управление центром

Перейдите в раздел управления Synapse Studio. В разделе Система управления версиями выберите Конфигурация Git. Если у вас нет подключенного репозитория, нажмите кнопку "Настроить".

Настройка параметров репозитория кода в центре управления

Вы можете подключить репозиторий Git Azure DevOps или GitHub в вашей рабочей области.

Подключитесь к Azure DevOps Git

Рабочую область Synapse можно сопоставить с репозиторием Azure DevOps Repository для управления исходным кодом, совместной работой, управления версиями и т. д. Если у вас нет репозитория Azure DevOps Repository, создайте его по этим инструкциям.

Параметры репозитория Git для Azure DevOps

При подключении к репозиторию Git сначала выберите тип репозитория в качестве Azure DevOps git, а затем выберите один клиент Microsoft Entra из раскрывающегося списка и нажмите кнопку "Продолжить".

Настройка параметров репозитория кода

Область настройки содержит следующие параметры репозитория кода Azure DevOps git:

Настройка Описание Значение
Тип репозитория Тип репозитория кода Azure Repos.
Azure DevOps Git или GitHub
Вход для разных арендаторов Флажок для входа с использованием учетной записи межарендного доступа. Не установлен (по умолчанию)
Microsoft Entra ID Имя клиента Microsoft Entra. <your tenant name>
Учетная запись Azure DevOps Название вашей организации Azure Repos. Название организации Azure Repos можно найти по адресу https://{organization name}.visualstudio.com. Войдите в свою организацию Azure Repos и получите доступ к профилю Visual Studio, чтобы просмотреть свои репозитории и проекты. <your organization name>
Имя проекта Название проекта Azure Repos. Имя проекта Azure Repos можно найти по адресу https://{organization name}.visualstudio.com/{project name}. <your Azure Repos project name>
Имя репозитория Ваше имя репозитория кода Azure Repos. Проекты Azure Repos содержат репозитории Git, которые управляют исходным кодом по мере роста проекта. Создайте репозиторий либо используйте репозиторий, который уже имеется в проекте. <your Azure Repos code repository name>
Отдел сотрудничества Ветка для совместной работы в Azure Repos, используемая для публикации. По умолчанию используется master. Измените этот параметр, если нужно опубликовать ресурсы из другой ветви. Можно выбрать существующие ветви или создать новую <your collaboration branch name>
Корневая папка Корневая папка в вашей ветке для совместной работы Azure Repos. <your root folder name>
Импорт существующих ресурсов в репозиторий Указывает, следует ли импортировать имеющиеся ресурсы из Synapse Studio в репозиторий Git Azure Repos. Отметьте это поле, чтобы импортировать ресурсы рабочей области (кроме пулов) в соответствующий репозиторий Git в формате JSON. Это действие экспортирует каждый ресурс по отдельности. Если поле не отмечено, имеющиеся ресурсы не импортируются. Поле отмечено (по умолчанию)
Импортировать ресурс в эту ветвь Выберите ветвь, в которую будут импортированы ресурсы (скрипт SQL, записная книжка, определение задания Spark, набор данных, объект DataFlow и т. д.).

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

Примечание.

Azure Synapse не поддерживает подключение к локальному репозиторию Azure DevOps.

Использование другого клиента Microsoft Entra

Репозиторий Azure Repos Git может находиться в другом клиенте Microsoft Entra. Чтобы указать другой клиент Microsoft Entra, необходимо иметь разрешения администратора для используемой подписки Azure. Для получения дополнительной информации см. изменение администратора подписки.

Внимание

Чтобы подключиться к другому идентификатору Microsoft Entra, пользователь, вошедший в систему, должен быть частью этого Active Directory.

Использование личной учетной записи Майкрософт

Чтобы использовать личную учетную запись Майкрософт для интеграции с Git, можно связать личный репозиторий Azure с Active Directory вашей организации.

  1. Добавьте вашу личную учетную запись Майкрософт в Active Directory вашей организации в качестве гостя. Дополнительные сведения см. в разделе "Добавление пользователей совместной работы Microsoft Entra B2B" в портал Azure.

  2. Войдите в портал Azure с помощью личной учетной записи Майкрософт. Перейдите в Active Directory вашей организации.

  3. Перейдите к разделу Azure DevOps, где находится личный репозиторий. Выберите репозиторий и подключитесь к Active Directory.

После этих шагов настройки личный репозиторий станет доступен при управлении интеграцией Git в пользовательском интерфейсе Synapse Studio.

Дополнительные сведения о подключении Azure Repos к Active Directory организации см. в статье "Подключение организации к идентификатору Microsoft Entra".

Использование организации Azure DevOps между клиентами

Если ваш Azure DevOps не находится в том же клиенте, что и рабочая область Synapse, вы можете настроить рабочую область с организацией Azure DevOps в другом клиенте.

  1. Выберите параметр входа в кросс-клиент и нажмите кнопку "Продолжить"

    Выберите вход между клиентами

  2. Нажмите кнопку ОК в диалоговом окне.

    Подтвердите вход между доменами

  3. Выберите "Использовать другую учетную запись" и войдите с помощью учетной записи Azure DevOps.

    Использование другой учетной записи

  4. После входа выберите каталог и репозиторий и настройте его соответствующим образом.

    Выбор каталога

    Примечание.

    Для входа в рабочую область необходимо сначала войти в учетную запись пользователя рабочей области Synapse. Учетная запись Azure DevOps для нескольких арендаторов используется только для входа и получения доступа к репозиторию Azure DevOps, связанному с этой рабочей областью Synapse.

Подключение с помощью GitHub

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

Интеграция GitHub с Synapse Studio поддерживает как публичный GitHub (https://github.com), так и GitHub Enterprise. Вы можете использовать общедоступные и частные репозитории GitHub, если у вас есть разрешения на чтение и запись в репозитории GitHub.

Настройки GitHub

При подключении к репозиторию git сначала выберите в качестве типа репозитория GitHub, а затем укажите свою учетную запись GitHub, URL-адрес сервера GitHub Enterprise Server, если вы используете GitHub Enterprise Server, или имя организации GitHub Enterprise, если вы используете GitHub Enterprise Cloud. Выберите Продолжить.

Примечание.

Если вы используете GitHub Enterprise Cloud, не устанавливайте флажок Use GitHub Enterprise Server.

Параметры репозитория GitHub

Область настройки содержит следующие параметры репозитория кода GitHub:

Параметр Description Value
Тип репозитория Тип репозитория кода Azure Repos. GitHub
Use GitHub Enterprise (Использовать GitHub Enterprise) Флажок для выбора GitHub Enterprise. Не установлен (по умолчанию)
GitHub Enterprise URL (URL-адрес GitHub Enterprise) Корневой URL-адрес GitHub Enterprise (должен быть HTTPS для локального сервера GitHub Enterprise). Например: https://github.mydomain.com. Требуется только в том случае, если установлен флажок Use GitHub Enterprise (Использовать GitHub Enterprise). <your GitHub enterprise url>
Учетная запись GitHub Имя учетной записи GitHub. Это имя можно найти в https://github.com/{account имя}/{имя репозитория}. При переходе на эту страницу вам предложат ввести учетные данные OAuth GitHub для вашей учетной записи GitHub. <your GitHub account name>
Имя репозитория Имя репозитория кода GitHub. Учетные записи GitHub содержат репозитории Git для управления исходным кодом. Создайте репозиторий либо используйте уже имеющийся в учетной записи. <your repository name>
Отдел совместной работы Ветка вашей совместной работы в GitHub, используемая для публикации. По умолчанию, используется его основная версия. Измените этот параметр, если нужно опубликовать ресурсы из другой ветви. <your collaboration branch>
Корневая папка Ваша корневая папка в ветке совместной работы на GitHub. <your root folder name>
Импорт существующих ресурсов в репозиторий Указывает, следует ли импортировать имеющиеся ресурсы из Synapse Studio в репозиторий Git. Отметьте это поле, чтобы импортировать ресурсы рабочей области (кроме пулов) в соответствующий репозиторий Git в формате JSON. Это действие экспортирует каждый ресурс по отдельности. Если поле не отмечено, имеющиеся ресурсы не импортируются. Установлен (по умолчанию)
Импортировать ресурс в эту ветвь Выберите ветвь, в которую будут импортированы ресурсы (скрипт SQL, записная книжка, определение задания Spark, набор данных, объект DataFlow и т. д.).

Организации GitHub

Для подключения к организациям GitHub необходимо, чтобы организация предоставляла разрешение на доступ к Synapse Studio. Пользователь с разрешениями администратора в организации должен выполнить следующие действия.

Первое подключение к GitHub

Если вы впервые подключаетесь к GitHub из Synapse Studio, выполните следующие действия для подключения к организации GitHub.

  1. В панели конфигурация Git введите название организации в поле Учетная запись GitHub. Появится запрос на вход в GitHub.

  2. Выполните вход с использованием своих пользовательских учетных данных.

  3. Вам предлагается авторизовать Synapse в качестве приложения Azure Synapse. На этом экране вы увидите возможность предоставить разрешение Synapse для доступа к организации. Если вы не видите возможность предоставить разрешение, попросите администратора вручную предоставить разрешение через GitHub.

Выполнив эти действия, рабочая область сможет подключиться как к общедоступным, так и к частным репозиториям в вашей организации. Если вы не можете подключиться, попробуйте очистить кэш браузера и повторить попытку.

Уже подключено к GitHub с использованием личной учетной записи

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

  1. Перейдите в GitHub и откройте Settings (Настройки).

    Открытие области настроек GitHub

  2. Выберите пункт Заявления. На вкладке Разрешенные приложения OAuth вы должны увидеть Azure Synapse.

    Авторизация приложений OAuth

  3. Выберите Azure Synapse и предоставьте доступ своей организации.

    Предоставьте разрешение организации

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

Управление версиями

Системы управления версиями (также известные как системы контроля версий) позволяют разработчикам совместно работать над кодом и отслеживать изменения. Система контроля версий — это важный инструмент для многопользовательских проектов.

Создание ветвей функций

Каждый репозиторий Git, который связан с Synapse Studio, имеет ветвь совместной работы. (main или master — ветвь совместной работы по умолчанию). Пользователи также могут создавать ветви компонентов, щелкнув +Создать ветвь в раскрывающемся списке ветвей.

Создание ветви

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

Создание ветви на основе частной ветви

Когда вы будете готовы объединить изменения из ветки с функцией в ветку сотрудничества, выберите список веток и нажмите кнопку "Создать запрос на объединение". Это действие перенаправит вас на платформу Git, где можно инициировать pull requests, проводить ревью кода и объединять изменения в вашей ветви совместной работы. Вам разрешено публиковать в службу Synapse только из ветки совместной работы.

Создать новый пулл-реквест

Настройка параметров публикации

По умолчанию Synapse Studio создает шаблоны рабочих областей и сохраняет их в ветви с именем workspace_publish. Чтобы настроить пользовательскую ветвь публикации, добавьте файл publish_config.json в корневую папку в ветви совместной работы. При публикации Synapse Studio считывает этот файл, ищет поле publishBranchи сохраняет файлы шаблонов рабочей области в указанном расположении. Если ветвь не существует, Synapse Studio автоматически создаст ее. Ниже приведен пример того, как выглядит этот файл:

{
    "publishBranch": "workspace_publish"
}

У Synapse Studio может одновременно быть только одна ветка публикации. При указании новой ветви публикации исходная ветвь публикации не будет удалена. Если вы хотите удалить предыдущую ветвь публикации, сделайте это вручную.

Публикация изменений кода

После объединения изменений в ветвь совместной работы выберите "Опубликовать ", чтобы вручную опубликовать изменения кода в ветви совместной работы в службе Synapse.

Публикация изменений

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

Подтвердите правильность ветки публикации

Внимание

Ветка совместной разработки не отражает то, что развернуто в службе. Изменения в ветви совместной работы должны публиковаться вручную.

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

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

Значок Git

Введите имя рабочей области и выберите "Отключить" , чтобы удалить репозиторий Git, связанный с рабочей областью.

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

Внимание

Удаление конфигурации Git из рабочей области не приводит к удалению каких-либо данных из репозитория. Рабочая область Synapse содержит все опубликованные ресурсы. Вы можете продолжить редактирование рабочей области непосредственно в службе.

Рекомендации по интеграции с Git

  • Разрешения. После подключения репозитория Git к рабочей области любой пользователь, который может получить доступ к репозиторию Git с любой ролью в рабочей области, может обновлять артефакты, такие как скрипт SQL, записная книжка, определение задания Spark, набор данных, поток данных и конвейер в режиме git. Обычно не требуется наличия у каждого участника группы разрешения на обновление рабочей области. Предоставляйте доступ к репозиторию Git только для авторов артефактов рабочей области Synapse.
  • Совместная работа. Рекомендуется не разрешать прямые возвраты в ветвь совместной работы. Это ограничение может помочь предотвратить ошибки, так как каждый вход проходит через процесс проверка запроса на вытягивание, описанный в разделе "Создание ветвь компонента".
  • Режим реального времени Synapse. После публикации в режиме git все изменения отражаются в динамическом режиме Synapse. В живом режиме в Synapse публикация отключена. Кроме того, вы можете просматривать и запускать артефакты в режиме реального времени, если предоставлено правильное разрешение.
  • Редактирование артефактов в Studio. Synapse Studio является единственным местом, в котором можно включить управление исходным кодом в рабочей области и автоматически синхронизировать изменения в Git. Любые изменения с помощью пакета SDK, PowerShell, не синхронизируются с git. При включении Git рекомендуется всегда изменять артефакт в Studio.

Устранение неполадок интеграции Git

Доступ к режиму Git

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

  1. Очистите файлы cookie и кэш браузера, а затем обновите страницу.

  2. Войдите в учетную запись GitHub.

Устаревшая публикационная ветвь.

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

  1. Удалите текущий репозиторий Git.

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

  3. Создайте пулл-реквест, чтобы выполнить слияние изменений с ветвью совместной работы.

Неподдерживаемые функции

  • Synapse Studio не допускает выборочного отбора фиксаций или публикации ресурсов.
  • Synapse Studio не поддерживает самостоятельно настроенное сообщение о фиксации.
  • По проектированию действие удаления в Студии фиксируется непосредственно в Git

Следующий шаг