Integrations

Bitbucket (Strings)

Content is machine translated from English by Phrase Language AI.

Tip

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

  • Bitbucket Sync is only supported for Bitbucket Cloud. It cannot be used with Bitbucket Server.

  • Bitbucket Sync can be used via API.

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.

Sample configuration file:

phrase:
    project_id: 1f61b9ecdb7a17a9dd174302419c50cc
    file_format: simple_json
    push:
        sources:
            - file: ./<locale_name>.json
    pull:
        targets:
            - file: ./<locale_name>.json

Project ID of a project is found in project settings.

Connect Repositories

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

  1. From the Integrations page, scroll down to the Bitbucket Sync connector and click Configure.

    The Repo Syncs page opens.

  2. Click Add Sync/Bitbucket.

    The Bitbucket Sync activation page opens.

  3. Select the Bitbucket account to be connected from the Authorize for workspace dropdown list and click on Grant access.

    The connection between Phrase Strings and the selected Bitbucket account is established. The Bitbucket sync settings window is displayed.

    Note

    It is not possible to connect multiple accounts via the Bitbucket integration.

  4. Select a project from the dropdown list.

  5. Select a Bitbucket repository from the dropdown list.

    If repository ownership is not correct, the repository will not be visible in the dropdown list.

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

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

  8. Optionally select Auto import to import files with every commit to the selected Bitbucket branch.

  9. Click Save.

    The project is now connected to the selected Bitbucket repository and added to the list.

Integrations can be deactivated or removed from the Repo Syncs page.

Optionally, users can remove a Bitbucket integration by revoking the authorization for Phrase Strings in their Bitbucket personal settings.

Import from Bitbucket

After activating Bitbucket Sync and connecting a repository, locale files can be imported. This is done in the form of pull requests, so changes can be reviewed, and branch management can be controlled.

To import locale files from Bitbucket, follow these steps:

  1. From the Repo Syncs page, select a project and click Import import_sync.png.

    Translations are pulled into the project. Keys and current translations are updated.

  2. Approve, merge or close the pull request in Bitbucket.

Export to Bitbucket

To export locale files to Bitbucket, follow these steps:

  1. From the Repo Syncs page, select a project and click Exportexport_sync.png.

    Translations are pushed into the repository.

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

History

Repo syncs keep a history of the latest imports and exports for each Phrase Strings project.

To view the history:

  • From the Repo Syncs page, select a project and click History history_sync.png.

    The import and export history for the project is presented. Export entries in the history include a link to the corresponding merge request.

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.