# gt: General Translation CLI tool: gt download URL: https://generaltranslation.com/zh/docs/cli/reference/commands/download.mdx --- title: gt download description: 从 General Translation 下载已完成的译文。gt download 命令的 API 参考。 --- 下载此前通过 [`gt enqueue`](/docs/cli/reference/commands/enqueue) 或 [`gt stage`](/docs/cli/reference/commands/stage) 提交翻译的已完成译文,并将其保存到配置中指定的输出路径。参见[管理翻译](/docs/cli/guides/managing-translations#split)。 *注意:仅用于生产环境。需要生产环境的 `GT_API_KEY` 和 `GT_PROJECT_ID`。* ```bash npx gt download ``` ## 工作方式 [#how-it-works] 1. 读取 `gt.config.json`,确定文件配置。 2. 启用 `stageTranslations` 时,读取已暂存的版本数据;否则会收集文件并计算哈希,以确定要下载的内容。 3. 轮询 General Translation API,获取已完成的翻译。 4. 将翻译文件保存到配置中指定的输出路径。 ## 标志 [#flags] `download` 接受完整的 [`gt translate`](/docs/cli/reference/commands/translate#flags) 标志集,但不包括源代码扫描标志 (`--src`、`--dictionary`、`--tsconfig`/`--jsconfig`、`--inline`、`--ignore-errors`) ,因为这些标志仅适用于扫描源代码。下面列出的所有标志都受支持;其中会影响纯下载运行的,是 API、配置、超时、下载和分支相关标志。 | 参数 | 描述 | 类型 | 可选 | 默认值 | | ---------------------------- | ---------------------------- | ---------- | -- | ---------------- | | `--api-key ` | 生产环境 API 密钥。 | `string` | 是 | `GT_API_KEY` | | `--project-id ` | 项目 ID。 | `string` | 是 | `GT_PROJECT_ID` | | `--version-id ` | 要下载的版本 ID。 | `string` | 是 | 内容哈希 | | `-c, --config ` | 配置文件路径。 | `string` | 是 | `gt.config.json` | | `--default-locale ` | 项目的源区域设置。 | `string` | 是 | `en` | | `--locales ` | 额外的目标区域设置,会追加到配置中的 locales。 | `string[]` | 是 | — | | `--timeout ` | 等待超时时间 (秒) 。 | `number` | 是 | `900` | | `--dry-run` | 仅解析并验证,不调用 API。 | `boolean` | 是 | `false` | | `--force` | 使缓存的翻译失效并重新翻译。 | `boolean` | 是 | `false` | | `--force-download` | 覆盖本地文件,绕过 `gt-lock.json` 检查。 | `boolean` | 是 | `false` | | `--save-local` | 下载前检测并保存本地修改。 | `boolean` | 是 | `false` | | `--publish` | 将翻译发布到 CDN。 | `boolean` | 是 | `false` | | `--enable-branching` | 启用基于分支的跟踪。 | `boolean` | 是 | — | | `--branch ` | 使用指定分支名称,而不是自动检测。 | `string` | 是 | — | | `--disable-branch-detection` | 仅使用指定分支,不进行关系检测。 | `boolean` | 是 | `false` | | `--remote-name ` | 用于分支检测的 Git 远程名称。 | `string` | 是 | `origin` | | `--tag [value]` | 为本次运行添加标签;未提供值时会自动从 git 解析。 | `string` | 是 | — | | `-m, --message ` | 附加到翻译标签的消息。 | `string` | 是 | — | `download` 还接受 [`gt translate`](/docs/cli/reference/commands/translate#experimental) 下列出的实验性标志 (例如 `--experimental-clear-locale-dirs`,会在写入新翻译前清空区域设置目录) 。 ## 示例 [#example] ```bash # 第一阶段:上传源文件 npx gt upload # 第二阶段:将翻译加入队列 npx gt enqueue # 第三阶段:下载已完成的翻译(此命令) npx gt download ``` ## 其他说明 [#notes] * 启用 `stageTranslations` 时,`download` 会读取已暂存的版本数据;否则,它会收集文件并计算哈希值,以确定要下载的内容。 * `download` 会轮询 API,直到翻译准备就绪或达到 `--timeout`,因此它可以在比 [`gt enqueue`](/docs/cli/reference/commands/enqueue) 更靠后的 CI job 中运行。