Система управления версиями в 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 Studio может быть связана только с одним репозиторием 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:
Параметр | Description | Значение |
---|---|---|
Тип репозитория | Тип репозитория кода 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 вашей организации.
Добавление личной учетной записи Майкрософт в Active Directory вашей организации в качестве гостя. Дополнительные сведения см. в разделе "Добавление пользователей совместной работы Microsoft Entra B2B" в портал Azure.
Войдите в портал Azure с помощью личной учетной записи Майкрософт. Перейдите в Active Directory вашей организации.
Перейдите к разделу Azure DevOps, где находится личный репозиторий. Выберите репозиторий и подключитесь к Active Directory.
После этих шагов настройки личный репозиторий станет доступен при управлении интеграцией Git в пользовательском интерфейсе Synapse Studio.
Дополнительные сведения о подключении Azure Repos к Active Directory организации см. в статье "Подключение организации к идентификатору Microsoft Entra".
Использование организации Azure DevOps между клиентами
Если Azure DevOps не в том же клиенте, что и рабочая область Synapse, можно настроить рабочую область с несколькими клиентами организации Azure DevOps.
Выберите параметр входа в кросс-клиент и нажмите кнопку "Продолжить"
Нажмите кнопку ОК в диалоговом окне.
Выберите "Использовать другую учетную запись" и войдите с помощью учетной записи Azure DevOps.
После входа выберите каталог и репозиторий и настройте его соответствующим образом.
Примечание.
Для входа в рабочую область необходимо сначала войти в учетную запись пользователя рабочей области 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 Enterprise Server).
Область настройки содержит следующие параметры репозитория кода 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.
В панели конфигурация Git введите название организации в поле Учетная запись GitHub. Появится запрос на вход в GitHub.
Выполните вход с использованием своих пользовательских учетных данных.
Вам предлагается авторизовать Synapse в качестве приложения Azure Synapse. На этом экране вы увидите возможность предоставить разрешение Synapse для доступа к организации. Если этот вариант не показан для предоставления разрешения, попросите администратора вручную назначить разрешение через GitHub.
Выполнив эти действия, рабочая область сможет подключиться как к общедоступным, так и к частным репозиториям в организации. Если вы не можете подключиться, попробуйте очистить кэш браузера и повторить попытку.
При уже имеющемся подключении к GitHub с помощью личной учетной записи
Если вы уже подключились к GitHub и предоставили разрешение только на доступ к своей личной учетной записи, выполните следующие действия, чтобы предоставить разрешения на доступ к организации.
Перейдите в GitHub и откройте Settings (Настройки).
Выберите пункт Заявления. На вкладке Разрешенные приложения OAuth вы должны увидеть Azure Synapse.
Выберите Azure Synapse и предоставьте доступ своей организации.
После выполнения этих действий рабочая область сможет подключиться как к общедоступным, так и к частным репозиториям в организации.
Управление версиями
Системы управления версиями (также известные как управление версиями) позволяют разработчикам совместно работать над кодом и отслеживать изменения. Система управления версиями — это важный инструмент для проектов с несколькими разработчиками.
Создание ветвей возможностей
Каждый репозиторий Git, который связан с Synapse Studio, имеет ветвь совместной работы. (main
или master
— ветвь совместной работы по умолчанию). Пользователи также могут создавать ветви компонентов, щелкнув +Создать ветвь в раскрывающемся списке ветвей.
Когда откроется панель для новой ветви, введите имя ветви для компонента и выберите базовую ветвь, на основе которой она будет создана.
Когда вы будете готовы объединить изменения из ветвь компонента в ветвь совместной работы, выберите раскрывающийся список ветвей и нажмите кнопку "Создать запрос на вытягивание". Это действие приведет вас к поставщику Git, где можно инициировать запросы на вытягивание, выполнять проверки кода и объединять изменения в ветви совместной работы. Вы можете публиковать только службу 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 из рабочей области не приводит к удалению каких-либо данных из репозитория. Рабочая область 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:
Очистите файлы cookie и кэш браузера, а затем обновите страницу.
Войдите в учетную запись GitHub.
Устаревшая ветвь публикации
Если ветвь публикации не синхронизирована с главной ветвью и содержит устаревшие ресурсы, несмотря на недавнюю публикацию, попробуйте выполнить следующие действия.
Удалите текущий репозиторий Git.
Повторно сконфигурируйте Git повторно с теми же параметрами, но убедитесь, что выбрано поле Импорт существующих ресурсов в репозиторий и выбрана та же ветвь.
Создайте запрос на вытягивание, чтобы выполнить слияние с ветвью совместной работы и применить в ней изменения.
Неподдерживаемые функции
- Synapse Studio не допускает выборочного отбора фиксаций или публикации ресурсов.
- Synapse Studio не поддерживает самостоятельно настроенное сообщение о фиксации.
- По проектированию действие удаления в Студии фиксируется непосредственно в Git