# gt: General Translation CLI tool: gt translate URL: https://generaltranslation.com/ja/docs/cli/reference/commands/translate.mdx --- title: gt translate description: General Translation API を使用してプロジェクトを翻訳します。`gt translate` コマンドの API リファレンス。 --- プロジェクトを翻訳します。`gt.config.json` を読み取って対象ファイルを特定し、フレームワークの library を使用している場合はソースコード内のインラインコンテンツをスキャンし、dictionary を含めたうえで、翻訳をコードベースまたは CDN に保存します。 これは General Translation API を利用するための主要なコマンドです。本番ビルドの前に CI で実行してください。ワークフロー全体については、[翻訳の生成](/docs/cli/guides/generating-translations) を参照してください。内部では、`translate` は `stage` と `download` を 1 ステップで実行します。これらを個別に実行するには、[`gt stage`](/docs/cli/reference/commands/stage)、[`gt upload`](/docs/cli/reference/commands/upload)、[`gt enqueue`](/docs/cli/reference/commands/enqueue)、[`gt download`](/docs/cli/reference/commands/download) を使用してください。 *注: 本番環境でのみ使用してください。本番用の `GT_API_KEY` と `GT_PROJECT_ID` を環境変数として設定し、APIキー を `gt.config.json` に保存しないでください。* ```bash npx gt translate ``` ## 仕組み [#how-it-works] 1. `gt.config.json` を読み取り、対象のロケール、翻訳対象のファイル、およびその出力パスを特定します。 2. `gt-next`、`gt-react`、`gt-react-native`、`gt-tanstack-start` の各プロジェクトでは、`src` の glob をスキャンしてインラインコンテンツ — [``](/docs/react/reference/components/t) コンポーネントと [`useGT`](/docs/react/reference/hooks/use-gt) の呼び出し — を検出し、dictionary ファイルも含めます。 3. `package.json` からサードパーティの i18n ライブラリ — `next-intl` または `i18next` (`i18next-icu` をサポート) — を自動検出し、そのライブラリの構文に従って JSON ファイルを翻訳します。 4. 収集したコンテンツをステージングし、その結果を 1 つの手順でダウンロードします。内部的には、[`gt stage`](/docs/cli/reference/commands/stage) に続けて [`gt download`](/docs/cli/reference/commands/download) を実行します。これらを別々に実行するには、分割されたコマンドを使用してください。 5. 翻訳をコードベースに保存し、`--publish` または [`publish`](/docs/cli/reference/config#publish) 設定キーが指定されている場合は CDN にも公開します。 デフォルトでは、ソースコンテンツが変更されていない限り、CLI はローカル翻訳への変更を上書きしません。すべてを再翻訳するには `--force` を、再翻訳せずに再ダウンロードするには `--force-download` を使用してください。 ## フラグ [#flags] | パラメータ | 説明 | 型 | 任意 | デフォルト | | ---------------------------- | --------------------------------------------------------- | ---------- | -- | ---------------- | | `--api-key ` | 本番用の API キー。 | `string` | はい | `GT_API_KEY` | | `--project-id ` | プロジェクト ID。 | `string` | はい | `GT_PROJECT_ID` | | `--version-id ` | 実行時のバージョン ID。 | `string` | はい | Content hash | | `-c, --config ` | 設定ファイル のパス。 | `string` | はい | `gt.config.json` | | `--default-locale ` | プロジェクトの source ロケール。 | `string` | はい | `en` | | `--locales ` | 追加の対象ロケール。config の locales に追記されます。 | `string[]` | はい | — | | `--timeout ` | 翻訳の待機タイムアウト (秒) 。 | `number` | はい | `900` | | `--dry-run` | API を呼び出さずに、解析と検証のみを行います。 | `boolean` | はい | `false` | | `--force` | 既存の翻訳を上書きして、すべての Content を再翻訳します。 | `boolean` | はい | `false` | | `--force-download` | ローカルでの変更を上書きして、すべての翻訳を再ダウンロードします。 | `boolean` | はい | `false` | | `--save-local` | キューに追加する前に local edits を保存します。 | `boolean` | はい | `false` | | `--publish` | 翻訳を CDN に公開します。 | `boolean` | はい | `false` | | `--enable-branching` | ブランチベースの追跡を有効にします。 | `boolean` | はい | `false` | | `--branch ` | 自動検出の代わりにブランチ名を指定します。 | `string` | はい | — | | `--disable-branch-detection` | 関係性の検出を行わず、指定したブランチのみを使用します。 | `boolean` | はい | `false` | | `--remote-name ` | ブランチ検出に使用する Git リモート。 | `string` | はい | `origin` | | `--omit-config-ids` | `_versionId` または `_branchId` を `gt.config.json` に書き込みません。 | `boolean` | はい | — | | `--tag [value]` | 実行に タグ を付けます。値が指定されていない場合は git から自動的に解決されます。 | `string` | はい | — | | `-m, --message ` | 翻訳 タグ に付けるメッセージ。 | `string` | はい | — | ### ソーススキャン用フラグ [#source] これらは、`gt-next`、`gt-react`、`gt-react-native`、`gt-tanstack-start` の各プロジェクトでソースコードをスキャンする際に適用されます。 | パラメータ | 説明 | 型 | 任意 | デフォルト | | ------------------------------- | ----------------------------------- | ---------- | -- | --------------------------------------- | | `--src ` | ソースファイルの glob パターン。 | `string[]` | はい | `src`、`app`、`pages`、`components` の glob | | `--dictionary ` | dictionary ファイルのパス。 | `string` | はい | — | | `--tsconfig, --jsconfig ` | TS または JS の設定ファイルのパス。 | `string` | はい | 自動検出 | | `--inline` | `` や `useGT` などのインラインコンテンツを含めます。 | `boolean` | はい | `true` | | `--ignore-errors` | インラインコンテンツのスキャン中に見つかったエラーを無視します。 | `boolean` | はい | `false` | ### 実験的フラグ [#experimental] | パラメータ | 説明 | 型 | 任意 | デフォルト | | ----------------------------------------- | -------------------------------------------- | --------- | -- | ------- | | `--experimental-localize-static-urls` | 翻訳された `md`/`mdx` ファイル内の URL をローカライズします。 | `boolean` | はい | `false` | | `--experimental-hide-default-locale` | ローカライズされたパスからデフォルトロケールを除外します。 | `boolean` | はい | `false` | | `--experimental-flatten-json-files` | JSON ファイルを 1 つのファイルにフラット化します。 | `boolean` | はい | `false` | | `--experimental-localize-static-imports` | `md`/`mdx` ファイル内の静的インポートをローカライズします。 | `boolean` | はい | `false` | | `--experimental-localize-relative-assets` | 翻訳された `md`/`mdx` ファイル内の相対画像アセット URL を書き換えます。 | `boolean` | はい | `false` | | `--experimental-clear-locale-dirs` | ダウンロード前にロケールディレクトリを空にします。 | `boolean` | はい | `false` | ## 例 [#example] ```bash # gt.config.json を使用して翻訳し、GT_API_KEY と GT_PROJECT_ID を環境変数から読み込む npx gt translate # API を呼び出さずにプロジェクトを解析・検証する npx gt translate --dry-run # 翻訳をローカルに保存し、Runtime 読み込み用に CDN へ公開する npx gt translate --publish # ダッシュボードで識別しやすいようにタグを付ける npx gt translate --tag v2.1.0 -m "Added checkout page translations" ``` ## その他の注意 [#notes] * **コンテンツソース:** CLI はデフォルトで `src`、`app`、`pages`、`components` をスキャンします。`--src` または設定キー [`src`](/docs/cli/reference/config#src) で変更できます。 * **辞書:** `--dictionary` が設定されていない場合、CLI は `./src` と `./` で `dictionary.[json|ts|js]` を探します。 * **上書き:** `--force` は既存の翻訳をすべて上書きし、新規翻訳分の課金が発生します。`--force-download` は再翻訳せずに、ローカル編集を最新の翻訳で上書きします。 * **タグ付け:** タグ付けは非ブロッキングです。タグの作成に失敗しても、実行は継続されます。現在の git のコミットハッシュとメッセージを使うには、値を指定せずに `--tag` を渡してください。 * **公開:** `--publish` を使う前に、プロジェクト設定で CDN を有効にしてください。CDN が有効になっていない場合でも翻訳自体は成功しますが、公開ステップは警告とともに失敗します。 * **ブランチ:** git ブランチごとに翻訳を追跡するには、`--enable-branching` を渡してください。詳しくは [Tracking translations by branch](/docs/cli/guides/branching) を参照してください。 * **セキュリティ:** `gt.config.json` に APIキーを保存しないでください。CLI は `GT_API_KEY` と `GT_PROJECT_ID` を環境変数から自動的に読み取ります。