Integrations

GitHub (Strings)

Content is machine translated from English by Phrase Language AI.

Tip

For information about GitHub integration in Phrase TMS, refer to GitHub (TMS).

Prerequisites

  • The .phrase.yml configuration file must be present in the root of the branch to be monitored. The file defines which files to import (pull) or export (push) from the repository.

  • Read and write access are required for the repository.

  • Incorrectly defined configuration files may cause errors. Ensure that the file contains at least one push and one pull target, correct file formats and the correct setting of the update_translations parameter.

  • A GitHub access token for the scope of the repository (public_repo if synchronizing with a public repository).

  • If SSO is enabled in GitHub, it must also be enabled for the access token.

  • The phrase_translations branch cannot be protected.

  • Ensure repository settings do not require signed commits.

Note

Due to continuous improvements, the user interface may not be exactly the same as presented in the video.

Connect Repositories

Once the configuration file is in place, to connect a repository, follow these steps:

  1. From Project Settings, select the GitHub Sync tab.

  2. Enable Github Sync.

    GitHub Sync settings are presented.

  3. Optionally select GitHub Enterprise and provide the GitHub Enterprise API endpoint.

  4. Provide a GitHub Personal access token.

  5. Select a GitHub repository from the dropdown list.

  6. Select a Repository branch from the dropdown list to import (push) and export (pull) from. This is usually the main branch.

  7. Click Validate Configuration to ensure access token and configuration file are correct.

  8. Optionally Enable auto import from GitHub to import files with every commit to the selected GitHub branch.

    Generate a payload URL and set up a webhook for push events from GitHub.

  9. Click Save.

    The project is now connected to the selected GitHub repository.

Import Files

To import files:

  • From the Languages page of a project, click GitHub Sync select Import from GitHub.

    A default locale must be present.

    Language files (defined as push source entries in the configuration file) are imported into the project. Import progress can be monitored in the project activity stream.

    Note

    In case of issues upon importing, use the CLI client to test the .phrase.yml configuration file locally and check for any error messages.

    If required, contact Phrase Technical Support and attach the .phrase.yml configuration file to the support request.

Export Files

To export files:

  1. From the Languages page of a project, click GitHub Sync select Export to GitHub as pull request.

    The most recent language files are exported to the repository as a new pull request. Export progress can be monitored in the project activity stream.

    Note

    In case of issues upon exporting, use the CLI client to test the .phrase.yml configuration file locally and check for any error messages.

    If required, contact Phrase Technical Support and attach the .phrase.yml configuration file to the support request.

  2. Once files are exported, the pull request can be merged or closed in the repository and the branch can be deleted.

Was this article helpful?

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.