集成

GitHub (Strings)

文本由 Phrase Language AI 从英语机器翻译而得。

提示

有关 Phrase TMS 中 GitHub 集成的信息,请参阅 GitHub (TMS)。

Phrase Strings 与 GitHub 存储库集成,以在 Phrase 和 GitHub 之间同步本地化文件。

默认情况下,存储库使用 GitHub OAuth App 进行连接。也支持个人访问令牌,主要用于自托管实例或无法安装 OAuth App 的环境。

先决条件

  • .phrase.yml 配置文件必须存在于要监控的分支的根目录中。该文件定义了从存储库导入 (pull) 或导出 (push) 哪些文件。

  • 存储库需要读取和写入权限。

  • 配置文件定义不正确可能会导致错误。确保文件至少包含一个 push 和一个 pull 目标、正确的文件格式以及正确的 update_translations 参数。

  • GitHub OAuth App:

    • GitHub OAuth App 必须安装在拥有该存储库的 GitHub 公司或账户中。

    • 存储库必须包含在 OAuth App 安装中。

    • 在目标公司或账户中需要安装或授权 GitHub Apps 的权限。

    • 支持将 Strings 账户连接到多个 GitHub 公司。在集成配置中选择要同步的 GitHub 公司。可以连接的公司数量没有硬性限制。

  • GitHub 访问令牌:

    • 经典令牌

      需要 repo 范围(如果与公共存储库同步,则需要 public_repo)

    • 细粒度令牌

      需要以下权限:

      • 内容:读取和写入

      • 拉取请求:读取和写入

    • 确存储库设置不需要提交签名。

  • 如果在 GitHub 中启用了 SSO,也必须为访问令牌启用。

  • 不能保护 phrase_translations 分支。

注释

我们仍在不断优化,实际的用户界面可能与视频中呈现的不一样。

连接存储库

配置文件就绪后,请按照以下步骤连接存储库:

  1. 在主导航中,点击 自动化,然后点击 存储库同步。

    或者,从 集成 页面向下滚动到 存储库同步,然后点击 配置。

    存储库同步 页面随即打开。存储库同步 列表仅显示当前用户有权访问的项目。

  2. 点击 添加同步/GitHub。

    GitHub 同步 设置窗口随即打开。

  3. 从下拉列表中选择一个项目。

  4. 选择身份验证方法:

    • GitHub App(推荐)

      如果尚未安装 GitHub App,请点击 身份验证。身份验证仅需执行一次,即可用于多个存储库同步。

      如果已安装 GitHub App,请点击 管理安装 以完成目标公司或账户的应用程序安装。存储库访问权限在公司或账户级别进行管理,且不与单个 GitHub 用户绑定。

    • 个人访问令牌

      提供具有 API 范围的个人 存储库访问令牌。

      使用个人访问令牌时,存储库访问权限取决于创建该令牌的 GitHub 用户。

    • 自托管实例

      提供 GitHub 自托管 API 端点 以及具有 API 范围的个人 存储库访问令牌。

    如果目标存储库需要已验证(签名)的提交,则应使用 GitHub App 身份验证方法。使用个人访问令牌推送的提交未签名,因此同步失败,并出现以下错误:“存储库需要已验证(签名)的提交。”

  5. 如果使用 GitHub App,请从下拉列表中选择 已连接的 GitHub 公司。存储库列表会根据该选择进行加载。

  6. 从下拉列表中选择一个 GitHub 存储库。

  7. 从下拉列表中选择一个 存储库分支,以便从中导入(推送)和导出(拉取)。这通常是 master 分支。

  8. (可选)为拉取请求提供一个分支名称。如果留空,将创建一个默认值为 phrase-translations 的分支。

  9. 点击 验证配置 以确保身份验证设置和配置文件正确无误。

  10. 可选择选择一个 导入行为 选项,以确定何时自动将新文件或更新后的文件导入到项目中。

  11. 点击保存。

    项目现已连接到所选的 GitHub 存储库,并已添加到列表中。

  12. (可选)点击 铅笔图标 以重命名该集成。

导入文件

确保在 .phrase.yml 配置 文件中正确配置了推送命令。推送选项与 上传 API 端点的选项相同。

要导入文件:

  • 在 存储库同步 页面中,选择一个项目并点击 导入 Sync Import。

    语言文件(在配置文件中定义为推送原文/源语条目)会被导入到项目中。

    必须存在一个默认区域。

    注释

    如果导入时出现问题,请使用 CLI 客户在本地测试 .phrase.yml 配置文件并检查是否有任何错误消息。

    如有需要,请联系 Phrase 技术支持并将 .phrase.yml 配置文件附加到支持请求中。

导出文件

确保在 .phrase.yml 配置 文件中正确配置了拉取命令。拉取选项(例如 include_empty_translations 参数)与 locales download API 端点的选项相同。

要导出文件:

  1. 在 Repo Syncs 页面中,选择一个项目并点击 Export Sync Export。

    系统将显示 导出 窗口。

  2. 在 PR branch 字段中提供译文分支。

    存储库中的最新文件将作为新的拉取请求导出到目标分支。

  3. 文件导出后,即可在存储库中合并或关闭拉取请求,并删除该分支。

注释

如果导出时出现问题,请使用 CLI 客户在本地测试 .phrase.yml 配置文件并检查是否有任何错误消息。

如有需要,请联系 Phrase 技术支持并将 .phrase.yml 配置文件附加到支持请求中。

历史记录

存储库同步功能会保留每个 Phrase Strings 项目的最新导入和导出历史记录。

要查看历史记录:

  • 在 Repo Syncs 页面中,选择一个项目并点击 History 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.