在 GitHub、GitLab 或 Bitbucket 上搭建持续本地化,目前支持两种方式:托管式的 Lingo.dev GitHub App,以及在你自己的流水线中运行 @lingo.dev/cli。选择最适合你的平台,以及符合你所需控制程度的方案。
该选哪种方式?#
| 方式 | 适用场景 | 所需条件 |
|---|---|---|
| GitHub App | 托管在 GitHub 上的仓库 | 安装应用,提交包含 .lingo/config.json 和 engineId 的配置。无需 runner、secret 或 CLI。 |
在 runner 中运行 @lingo.dev/cli | 适用于 GitLab、Bitbucket,或想完全掌控流程的 GitHub Actions 用户 | 需要 Node 22+、@lingo.dev/cli、一个 LINGO_API_KEY secret,以及一个运行 lingo push 的作业。 |
在用 GitHub?先从 GitHub App 开始
GitHub App 在服务端运行。它会读取已提交的 .lingo/config.json(包括你的 engineId),响应 push 和 pull request,无需 runner、API key secret 或 lock file。按照 GitHub App guide 操作即可——本页其余内容将介绍如何在你自己的流水线中运行 CLI。
在你的流水线中运行 CLI#
如果你使用 GitLab 或 Bitbucket,或者希望在 GitHub 上自行驱动本地化流程,就可以把 @lingo.dev/cli 作为流水线中的一个作业来运行。无论在哪个平台,配置都分为相同的三步:配置 CLI、添加 API key,以及选择工作流。
前提条件
在接入 CI 之前,你需要先完成可用的 CLI setup:准备好 .lingo/config.json 文件,并能在本地运行 lingo push。
第 1 步:配置 CLI#
如果你还没完成这些步骤,请先参考 CLI Quickstart。完成后你应该具备:
- 项目根目录下有一个
.lingo/config.json文件(参见 Configuration) - 一个用于 Lingo.dev Engine 的
LINGO_API_KEY - 能够通过
lingo push在本地生成翻译
CLI 运行在 Node 22+ 上。可在你的流水线中通过以下方式安装:
npm install -g @lingo.dev/cli第 2 步:将 API 密钥添加为 CI secret#
lingo push 通过 LINGO_API_KEY 环境变量完成身份验证。请将其保存在你的 CI 平台的 secret 管理中:
- 进入 Settings > Secrets and variables > Actions
- 点击 New repository secret
- 名称:
LINGO_API_KEY,值:你的 API 密钥 - 点击 Add secret
第 3 步:选择工作流并添加配置#
你的作业会运行 lingo push 生成翻译,然后使用平台自身的工具提交结果或创建 pull request。请选择最适合你团队的工作流:
| 工作流 | 最适合 |
|---|---|
| 提交到 main | 适合希望以零摩擦、无感更新翻译的小团队 |
| 从 main 发起 PR | 适合希望在翻译合入 main 前先进行审核的团队 |
| 提交到功能分支 | 适合拥有长期功能分支的团队 |
| 从功能分支发起 PR | 适合希望对每一次翻译变更都保持最高控制力的团队 |
不确定选哪个?先从“提交到 main”开始——这是最简单的方式。之后你也可以随时切换,而且无需修改 .lingo/config.json。
各平台的详细配置说明和工作流示例见:
验证设置#
配置好 CI 作业后,推送一次变更来触发它。该流水线应当会:
- 运行
lingo push,翻译新增和变更的内容 - 提交翻译或创建 PR(取决于你选择的工作流)
- 更新
.lingo/lock.json文件,用于跟踪哪些内容已经翻译完成
如果你想在 CI 中验证翻译是否完整,而不生成新的翻译,请运行 lingo check:
lingo check如果有任何内容尚未翻译完成,该命令会以非零状态退出——很适合作为部署门禁。示例请参阅 高级模式。
