# gt: General Translation CLI tool: 快速入门 URL: https://generaltranslation.com/zh/docs/cli/quickstart.mdx --- title: 快速入门 description: 了解 General Translation CLI (`gt`) 的作用、适用场景,以及如何翻译你的第一个项目。 related: links: - /docs/cli/guides/generating-translations - /docs/cli/guides/configuring - /docs/cli/guides/managing-translations - /docs/cli/guides/using-auto-jsx --- General Translation CLI (`gt`) 可通过命令行为你的项目设置国际化并执行翻译。 它适用于 [`gt-react`、`gt-next` 和 `gt-react-native`](/docs/react/overview),也兼容 `next-intl` 和 `i18next` 等第三方 i18n 库,以及 JSON、YAML、Markdown 和 MDX 等独立文件。 ## CLI 的作用 [#what-it-does] CLI 让你可以直接使用以下功能: * **设置**,用于安装依赖、完成框架集成,并创建 `gt.config.json`。 * **翻译**,用于将源内容发送到 General Translation API,并将结果保存到你的代码库或 CDN。 * **CI 构建模块**,用于在不同的流水线阶段执行上传、排队和下载翻译。 * **验证**,用于在不调用 API 的情况下检查项目中的翻译错误。 ## 何时使用 CLI [#when-to-use] 当你需要以下操作时,请使用 CLI: * 通过引导式向导为新项目配置翻译。 * 在构建或 CI 流水线中翻译你的项目。 * 无需添加框架库即可翻译独立的内容文件。 * 将翻译与源内容一起纳入版本控制。 ## 快速入门 [#quickstart] 安装 `gt`,配置你的项目,并进行首次翻译。你需要一个现有项目,其中包含 `package.json`,并且已安装 Node.js。 ### 1. 安装 `gt` 将 CLI 作为开发依赖安装。 ```bash npm install gt --save-dev ``` ```bash yarn add --dev gt ``` ```bash bun add --dev gt ``` ```bash pnpm add --save-dev gt ``` ### 2. 配置项目 运行设置向导,检测你的框架、创建 `gt.config.json`,并在所选设置需要时生成凭据。 ```bash npx gt init ``` 在 monorepo 中,请从要本地化的应用目录运行该命令。如果从工作区根目录运行,向导会停止,且不会更改任何文件。 [`gt init`](/docs/cli/reference/commands/init) 是一个交互式向导,需要在终端中运行。在 CI 或其他非交互式 shell 中,它可能会等待输入、验证失败,或在未创建 `gt.config.json` 或未写入凭据的情况下提前退出。对于这些环境,请使用[面向 CI 的非交互式设置](#ci-setup)。 该向导会设置你的默认区域设置和目标区域设置,并选择翻译的存储位置。当所选设置需要凭据时,它可以将 API 密钥和项目 ID 写入 `.env.local`。如需了解详细设置,请参阅[配置 CLI](/docs/cli/guides/configuring);完整命令请参见 [`gt init`](/docs/cli/reference/commands/init)。 *注意:你现在应该已经在项目根目录下拥有一个 `gt.config.json`。如果向导生成了凭据,`.env.local` 会包含 `GT_API_KEY` 和 `GT_PROJECT_ID`。本地打包的 Vite 设置会跳过凭据,因此请在翻译前的下一步中添加它们。* ### 3. 添加你的生产环境 API 密钥 [`translate`](/docs/cli/reference/commands/translate) 命令需要生产环境 API 密钥和项目 ID。你可以让向导为你生成它们,也可以在 [API Keys 页面](https://generaltranslation.com/dashboard) 上自行创建。请将它们设置为环境变量,以便 CLI 读取。 ```bash title=".env.local" GT_API_KEY=your-api-key GT_PROJECT_ID=your-project-id ``` *注意:请将 API 密钥设为环境变量,切勿将其添加到 `gt.config.json` 中。* ### 4. 翻译项目 运行 [`translate`](/docs/cli/reference/commands/translate) 命令,翻译 `gt.config.json` 中配置的所有文件,以及源代码中所有内联的 [``](/docs/react/reference/components/t) 组件和词典条目。 ```bash npx gt translate ``` 翻译内容会保存到你的代码库中,可直接提交。请在构建生产环境版本之前,先在你的 CI 流水线中运行此命令。完整流程请参见[生成翻译](/docs/cli/guides/generating-translations)。 ## CI 的非交互式设置 [#ci-setup] 设置向导需要交互式终端,因此无法在 CI 或其他非交互式环境中运行。请手动进行设置:提交 `gt.config.json`,通过环境变量提供凭据,并针对该配置运行 [`translate`](/docs/cli/reference/commands/translate)。 ### 1. 添加 `gt.config.json` 自行编写并提交此文件,这样 CLI 才知道要翻译哪些内容。最小配置需要设置 source 和目标区域设置,并添加一个 `files` 条目,让 [`translate`](/docs/cli/reference/commands/translate) 有内容可处理。下面的 `gt` 条目会将框架翻译 (来自 `gt-next`、`gt-react` 或 `gt-react-native`) 存储到指定路径的本地。 ```json title="gt.config.json" { "$schema": "https://assets.gtx.dev/config-schema.json", "defaultLocale": "en", "locales": ["fr", "es"], "files": { "gt": { "output": "public/_gt/[locale].json" } } } ``` 如果要改为翻译独立文件,请添加一种文件类型 (例如 `json` 或 `mdx`) ,并用带有 `include` glob 的配置替换 `gt` 条目,或与其一同使用。有关文件和存储选项,请参阅[配置 CLI](/docs/cli/guides/configuring);有关所有字段,请参阅[配置参考](/docs/cli/reference/config)。 ### 2. 设置你的凭据 请将你的生产环境 API 密钥和项目 ID 设置为 CI 提供商 secret 设置中的环境变量,而不是写入已提交的文件中。请在 [API Keys 页面](https://generaltranslation.com/dashboard) 上创建它们。 ```bash GT_API_KEY=your-api-key GT_PROJECT_ID=your-project-id ``` ### 3. 运行 `translate` 命令 在为生产环境执行 `build` 之前,请先运行 [`translate`](/docs/cli/reference/commands/translate)。传入 `--config` 参数以指定你的配置文件。 ```bash npx gt translate --config gt.config.json ``` ## Next steps - /docs/cli/guides/generating-translations - /docs/cli/guides/configuring - /docs/cli/guides/managing-translations - /docs/cli/guides/using-auto-jsx