# gt: General Translation CLI tool: gt translate URL: https://generaltranslation.com/fr/docs/cli/reference/commands/translate.mdx --- title: gt translate description: Traduisez un projet via l’API de General Translation. Référence de l’API pour la commande gt translate. --- Traduit votre projet. Cette commande lit `gt.config.json` pour trouver vos fichiers, analyse votre code source à la recherche de contenu inline si vous utilisez une bibliothèque de framework, inclut votre dictionnaire et enregistre les traductions dans votre base de code ou sur le CDN. Il s’agit de la commande principale pour utiliser l’API de General Translation. Exécutez-la dans votre CI avant un build de production. Pour le workflow complet, consultez [Generating translations](/docs/cli/guides/generating-translations). En arrière-plan, `translate` met en attente et télécharge en une seule étape ; pour exécuter ces parties séparément, utilisez [`gt stage`](/docs/cli/reference/commands/stage), [`gt upload`](/docs/cli/reference/commands/upload), [`gt enqueue`](/docs/cli/reference/commands/enqueue) et [`gt download`](/docs/cli/reference/commands/download). *Remarque : pour une utilisation en production uniquement. Définissez une `GT_API_KEY` de production et `GT_PROJECT_ID` comme variables d’environnement, et ne stockez jamais votre clé API dans `gt.config.json`.* ```bash npx gt translate ``` ## Fonctionnement [#how-it-works] 1. Lit `gt.config.json` pour déterminer les locales cibles, les fichiers à traduire et leurs chemins de sortie. 2. Pour les projets `gt-next`, `gt-react`, `gt-react-native` et `gt-tanstack-start`, analyse les motifs glob de `src` à la recherche de contenu inline — les composants [``](/docs/react/reference/components/t) et les appels à [`useGT`](/docs/react/reference/hooks/use-gt) — et inclut votre fichier de dictionnaire. 3. Détecte automatiquement une bibliothèque d’i18n tierce à partir de `package.json` — `next-intl` ou `i18next` (avec prise en charge de `i18next-icu`) — et traduit ses fichiers JSON en respectant la syntaxe de cette bibliothèque. 4. Met en attente le contenu collecté et télécharge les résultats en une seule étape. En interne, cela correspond à [`gt stage`](/docs/cli/reference/commands/stage) suivi de [`gt download`](/docs/cli/reference/commands/download) ; utilisez les commandes distinctes pour exécuter ces étapes séparément. 5. Enregistre les traductions dans votre base de code, ainsi que sur le CDN lorsque `--publish` ou la clé de configuration [`publish`](/docs/cli/reference/config#publish) est définie. Par défaut, la CLI n’écrase pas les modifications apportées aux traductions locales, sauf si le contenu source a changé. Utilisez `--force` pour tout retraduire, ou `--force-download` pour retélécharger sans retraduire. ## Options [#flags] | Paramètre | Description | Type | Facultatif | Par défaut | | ---------------------------- | -------------------------------------------------------------------------------------- | ---------- | ---------- | ------------------ | | `--api-key ` | Clé API de production. | `string` | Oui | `GT_API_KEY` | | `--project-id ` | ID du projet. | `string` | Oui | `GT_PROJECT_ID` | | `--version-id ` | ID de version de l’exécution. | `string` | Oui | Hachage du contenu | | `-c, --config ` | Chemin du fichier de configuration. | `string` | Oui | `gt.config.json` | | `--default-locale ` | Paramètre régional source du projet. | `string` | Oui | `en` | | `--locales ` | Paramètres régionaux cibles supplémentaires, ajoutés aux locales de la configuration. | `string[]` | Oui | — | | `--timeout ` | Délai d’attente pour la traduction, en secondes. | `number` | Oui | `900` | | `--dry-run` | Analyser et valider sans appeler l’API. | `boolean` | Oui | `false` | | `--force` | Retraduire tout le contenu en écrasant les traductions existantes. | `boolean` | Oui | `false` | | `--force-download` | Retélécharger toutes les traductions en écrasant les modifications locales. | `boolean` | Oui | `false` | | `--save-local` | Enregistrer les modifications locales avant la mise en file d’attente. | `boolean` | Oui | `false` | | `--publish` | Publier les traductions sur le CDN. | `boolean` | Oui | `false` | | `--enable-branching` | Activer le suivi par branche. | `boolean` | Oui | `false` | | `--branch ` | Nom de la branche au lieu de la détecter automatiquement. | `string` | Oui | — | | `--disable-branch-detection` | Utiliser uniquement la branche spécifiée, sans détecter les relations. | `boolean` | Oui | `false` | | `--remote-name ` | Remote Git utilisé pour détecter la branche. | `string` | Oui | `origin` | | `--omit-config-ids` | Ne pas écrire `_versionId` ou `_branchId` dans `gt.config.json`. | `boolean` | Oui | — | | `--tag [value]` | Tag de l’exécution ; résolu automatiquement depuis git si aucune valeur n’est fournie. | `string` | Oui | — | | `-m, --message ` | Message associé au tag de traduction. | `string` | Oui | — | ### Flags d’analyse des sources [#source] Ces flags s’appliquent lors de l’analyse du code source dans les projets `gt-next`, `gt-react`, `gt-react-native` et `gt-tanstack-start`. | Paramètre | Description | Type | Facultatif | Par défaut | | ------------------------------- | ------------------------------------------------------------------ | ---------- | ---------- | ----------------------------------------- | | `--src ` | Motifs glob pour les fichiers source. | `string[]` | Oui | globs `src`, `app`, `pages`, `components` | | `--dictionary ` | Chemin vers le fichier de dictionnaire. | `string` | Oui | — | | `--tsconfig, --jsconfig ` | Chemin vers un fichier de configuration TS ou JS. | `string` | Oui | Détecté automatiquement | | `--inline` | Inclure le contenu inline comme `` et `useGT`. | `boolean` | Oui | `true` | | `--ignore-errors` | Ignorer les erreurs détectées lors de l’analyse du contenu inline. | `boolean` | Oui | `false` | ### Flags expérimentaux [#experimental] | Paramètre | Description | Type | Facultatif | Par défaut | | ----------------------------------------- | -------------------------------------------------------------------------------------- | --------- | ---------- | ---------- | | `--experimental-localize-static-urls` | Localiser les URL dans les fichiers `md`/`mdx` traduits. | `boolean` | Oui | `false` | | `--experimental-hide-default-locale` | Masquer le paramètre régional par défaut dans les chemins localisés. | `boolean` | Oui | `false` | | `--experimental-flatten-json-files` | Fusionner les fichiers JSON en un seul fichier. | `boolean` | Oui | `false` | | `--experimental-localize-static-imports` | Localiser les imports statiques dans les fichiers `md`/`mdx`. | `boolean` | Oui | `false` | | `--experimental-localize-relative-assets` | Réécrire les URL relatives des ressources image dans les fichiers `md`/`mdx` traduits. | `boolean` | Oui | `false` | | `--experimental-clear-locale-dirs` | Effacer les répertoires de paramètres régionaux avant le téléchargement. | `boolean` | Oui | `false` | ## Exemple [#example] ```bash # Traduire en utilisant gt.config.json, en lisant GT_API_KEY et GT_PROJECT_ID depuis l'environnement npx gt translate # Analyser et valider le projet sans appeler l'API npx gt translate --dry-run # Enregistrer les traductions localement et les publier sur le CDN pour le chargement en runtime npx gt translate --publish # Taguer l'exécution pour l'identifier facilement dans le dashboard npx gt translate --tag v2.1.0 -m "Added checkout page translations" ``` ## Autres remarques [#notes] * **Sources de contenu :** la CLI analyse `src`, `app`, `pages` et `components` par défaut. Vous pouvez remplacer ce comportement avec `--src` ou la clé de configuration [`src`](/docs/cli/reference/config#src). * **Dictionnaire :** lorsque `--dictionary` n'est pas défini, la CLI recherche `dictionary.[json|ts|js]` dans `./src` et `./`. * **Écrasement :** `--force` écrase toutes les traductions existantes et facture les nouvelles ; `--force-download` écrase les modifications locales avec les dernières traductions sans relancer la traduction. * **Étiquetage :** l'étiquetage n'est pas bloquant — si la création du tag échoue, l'exécution continue. Passez `--tag` sans valeur pour utiliser le hachage et le message du commit git actuel. * **Publication :** activez le CDN dans les Paramètres du projet avant d'utiliser `--publish`. Si le CDN n'est pas activé, l'exécution de la traduction aboutit, mais l'étape de publication échoue avec un avertissement. * **Gestion des branches :** passez `--enable-branching` pour suivre les traductions par branche git. Voir [Suivre les traductions par branche](/docs/cli/guides/branching). * **Sécurité :** ne stockez jamais votre clé API dans `gt.config.json`. La CLI lit automatiquement `GT_API_KEY` et `GT_PROJECT_ID` depuis l'environnement.