Интеграции

GitHub (Строки)

Контент автоматически переведен с английского языка с помощью Phrase Language AI.

Совет

Для получения информации о интеграции GitHub в Phrase TMS обратитесь к GitHub (TMS).

Строки Phrase интегрируются с репозиториями GitHub для синхронизации файлов локализации между Phrase и GitHub.

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

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

  • Файл .phrase.yml конфигурации должен находиться в корне ветви, которую необходимо отслеживать. Файл определяет, какие файлы импортировать (извлечение) или экспортировать (отправка) из хранилища.

  • Для хранилища необходим доступ для чтения и записи.

  • Неверно заданные файлы конфигурации могут вызвать ошибки. Убедитесь, что файл содержит хотя бы одну цель для отправки и одну для извлечения, правильные форматы файлов и правильную настройку параметра update_translations.

  • Приложение GitHub OAuth:

    • Приложение GitHub OAuth должно быть установлено в организации или учетной записи GitHub, которая владеет репозиторием.

    • Репозиторий должен быть включен в установку приложения OAuth.

    • Необходимы разрешения для установки или авторизации приложений GitHub в целевой организации или учетной записи.

  • токен доступа GitHub:

    • Классические токены

      Требуется область repo (public_repo, если синхронизация с общим репозиторием)

    • Токены с тонкой настройкой

      Требуются следующие разрешения:

      • Содержимое: Чтение и запись

      • Запросы на извлечение: Чтение и запись

    • Убедитесь, что настройки хранилища не требуют подписанных фиксаций.

  • Если в GitHub включен единый вход в систему (SSO), его также необходимо активировать для токена доступа.

  • Невозможно защитить ветвь phrase_translations.

Примечание

Из-за постоянных доработок пользовательский интерфейс может быть не совсем таким, как представлено в видео.

Подключить хранилища

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

  1. На странице Интеграции прокрутите вниз до Синхронизация репозиториев и нажмите Настроить.

    Открывается страница Синхронизация репозиториев.

  2. Нажмите Добавить синхронизацию/GitHub.

    Открывается окно настроек синхронизации GitHub.

  3. Выберите проект из выпадающего списка.

  4. Выберите метод аутентификации:

    • Приложение GitHub (рекомендуется)

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

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

    • Личный токен доступа

      Предоставьте личный токен доступа к репозиторию с областью API.

      При использовании личного токена доступа доступ к хранилищу зависит от пользователя GitHub, который создал токен.

    • Самостоятельная точка

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

  5. Выберите репозиторий GitHub из выпадающего списка.

  6. Выберите ветвь репозитория из выпадающего списка для импорта (push) и экспорта (pull). Это обычно ветвь master.

  7. При желании укажите имя ветви для запроса на извлечение. Если оставить пустым, будет создана ветвь с значением по умолчанию phrase-translations.

  8. Нажмите Проверить конфигурацию, чтобы убедиться, что настройки аутентификации и файл конфигурации правильные.

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

  10. Нажмите Сохранить.

    Проект теперь подключен к выбранному репозиторию GitHub и добавлен в список.

Импорт файлов

Убедитесь, что команды push правильно настроены в файле .phrase.yml конфигурации. Опции push такие же, как для конечной точки uploads API.

Чтобы импортировать файлы:

  • На странице Синхронизация репозитория выберите проект и нажмите Импорт Sync Import.

    Файлы языка (определенные как записи источника в конфигурационном файле) импортируются в проект.

    Должен быть представлен стандартный язык.

    Примечание

    В случае проблем при импорте используйте клиент CLI, чтобы протестировать локально файл конфигурации .phrase.yml и проверить наличие сообщений об ошибках.

    Если необходимо, свяжитесь с технической поддержкой Phrase и приложите файл конфигурации .phrase.yml к запросу в службу поддержки.

Экспорт файлов

Убедитесь, что команды извлечения правильно настроены в файле .phrase.yml конфигурации. Параметры извлечения (например, параметр include_empty_translations) такие же, как для конечной точки API загрузка языков.

Чтобы экспортировать файлы:

  1. На странице Синхронизация репозиториев выберите проект и нажмите Экспорт Sync Export.

    Окно Экспорт отображается.

  2. Укажите целевую ветвь в поле ветвь PR.

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

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

Примечание

В случае проблем при экспорте используйте клиент CLI, чтобы протестировать локально файл конфигурации .phrase.yml и проверить наличие сообщений об ошибках.

Если необходимо, свяжитесь с технической поддержкой Phrase и приложите файл конфигурации .phrase.yml к запросу в службу поддержки.

История

Синхронизация репозиториев сохраняет историю последних импортов и экспортов для каждого проекта Phrase Strings.

Чтобы просмотреть историю:

  • На странице Синхронизация репозиториев выберите проект и нажмите История Sync History.

    История импорта и экспорта для проекта представлена. Экспортируемые записи в истории включают ссылку на соответствующий запрос на объединение.

Была ли эта статья полезной?

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.