预发布

如何将翻译内容预发布以供审核

概览

gtx-cli stage 是一个为你的项目生成翻译并将其暂存以供审阅的命令。

只有在你的项目中启用了人工审阅时,此命令才有用。

目前,此命令仅支持使用 gt-nextgt-react 的应用。

使用方法

在将应用用于生产环境之前,先在 CI 流水线中运行此命令。

npx gtx-cli stage

注意: 此命令需要生产环境的 API key!请在平台获取。

gtx-cli stage 命令与 translate 命令的工作方式相同,但它不会下载已完成的翻译或将其发布到 CDN(内容分发网络),而是仅将其暂存以供审核。

运行 gtx-cli stage 后,你应当运行 gtx-cli translate 来完成流程,并下载翻译(如果已配置)。

仅限生产环境使用!

此命令面向生产构建,不应在开发环境中使用。 运行此命令前,请确保当前所在分支将用于生产发布。 另外,请在环境变量中指定你的生产 API key(GT_API_KEY)和项目 ID(GT_PROJECT_ID)。


标志

参数描述类型可选默认值
--api-key指定生产环境的 API keystringtrue
--project-id指定项目 IDstringtrue
--version-id指定版本 ID(默认是内容的哈希)stringtrue
--config <path>指定 GT 配置文件路径stringtrue"gt.config.json"
--tsconfig, --jsconfig <path>指定 TS 或 JS 配置文件路径stringtrue
--src <paths>以空格分隔的 glob 模式列表,用于匹配源文件。应为相对项目根目录的路径。[string]true[ 'src/**/*.{js,jsx,ts,tsx}', 'app/**/*.{js,jsx,ts,tsx}', 'pages/**/*.{js,jsx,ts,tsx}', 'components/**/*.{js,jsx,ts,tsx}', ]
--dictionary <path>指定字典文件路径stringtrue
--inline在字典之外额外包含内联的 <T> 标签booleantruetrue
--timeout翻译请求的超时时间(秒)numbertrue600
--new, --locales <locales>要将项目翻译成的目标 locales[string]true
--default-locale <locale>项目的源 localestringtrueen
--ignore-errors忽略错误并强制翻译有效内容flagtruefalse
--dry-run试运行该命令flagtruefalse

以上所有参数均为可选。

不要将你的 API key 添加到 gt.config.json 文件中! 你应该将其设置为环境变量。若已设置,CLI 将自动读取 GT_API_KEY

以下是几个关键参数:

参数描述
--dry-run该标志会让 CLI 解析并验证你的项目,但不会与 GT API 通信。可用于验证代码库。
--api-key除非使用 --dry-run,否则必须提供生产环境 API key。
--project-id同理,除非使用 --dry-run,否则必须提供项目 ID。
--new, --locales <locales>要将项目翻译成的目标 locales。这些会追加到 gt.config.json 中指定的 locales。

配置文件

运行 gtx-cli stage 时,CLI 会自动在你的 gt.config.json 文件中添加 stageTranslations: true 属性。

该属性用于确保如果在某个特定部署版本上未先运行 stage 就运行 translate,CLI 工具将抛出错误并退出。

这份指南怎么样?

预发布