# gt: General Translation CLI tool: Generazione delle traduzioni
URL: https://generaltranslation.com/it/docs/cli/guides/generating-translations.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Come generare le traduzioni e salvarle nella tua base di codice o sul CDN con la CLI di General Translation.

Il comando [`gt translate`](/docs/cli/reference/commands/translate) è il modo principale per tradurre il tuo progetto. Legge `gt.config.json` per individuare i file, analizza il codice sorgente alla ricerca di contenuto inline e genera le traduzioni tramite l&#39;API di traduzione di General Translation.

*Nota: esegui [`translate`](/docs/cli/reference/commands/translate) nella pipeline CI prima della build per la produzione. Non è pensato per lo sviluppo, dove invece si usa una chiave API di sviluppo per la traduzione su richiesta.*

## Prima di iniziare [#before]

* Configura il progetto con un `gt.config.json`. Consulta [Configurare la CLI](/docs/cli/guides/configuring).
* Imposta `GT_API_KEY` e `GT_PROJECT_ID` di produzione come variabili d&#39;ambiente.
* Fai checkout del branch da cui esegui la build di produzione.

## Traduci il tuo progetto [#translate]

Esegui il comando dalla radice del progetto.

```bash
npx gt translate
```

La CLI traduce tutti i file corrispondenti in `gt.config.json`. Se usi `gt-next`, `gt-react` o `gt-react-native`, analizza anche il codice sorgente alla ricerca di contenuti inline — come i componenti [`<T>`](/docs/react/reference/components/t) e le chiamate [`useGT`](/docs/react/reference/hooks/use-gt) — e include il file del dizionario. Le traduzioni vengono salvate nella tua base di codice, pronte per il commit.

Se usi `next-intl`, `react-i18next` o `next-i18next`, la CLI rileva la libreria dal tuo `package.json` e traduce i file preservando la sintassi delle stringhe della libreria.

## Aggiungilo alla build [#build]

Esegui [`translate`](/docs/cli/reference/commands/translate) prima del comando di build, così la versione in produzione includerà sempre le traduzioni aggiornate.

```json title="package.json"
{
  "scripts": {
    "translate": "npx gt translate",
    "build": "npm run translate && <your build command>"
  }
}
```

## Controllare quali contenuti vengono tradotti [#content]

Per impostazione predefinita, la CLI cerca i contenuti inline in `src`, `app`, `pages` e `components`. Puoi modificare questo comportamento con il campo `src` in `gt.config.json` o con il flag `--src`.

```bash
npx gt translate --src "lib/**/*.{ts,tsx}"
```

Per tradurre in ulteriori impostazioni regionali in una singola esecuzione senza modificare la configurazione, usa `--locales`. Queste si aggiungono ai locales in `gt.config.json`.

```bash
npx gt translate --locales de it
```

## Validare senza tradurre [#validate]

Passa `--dry-run` per analizzare e validare il progetto senza chiamare l&#39;API. È utile per intercettare errori nella CI prima di un&#39;esecuzione effettiva.

```bash
npx gt translate --dry-run
```

## Ritraduci il contenuto esistente [#retranslate]

Per impostazione predefinita, la CLI traduce solo il contenuto la cui sorgente è cambiata, mantiene le modifiche locali e può riutilizzare una traduzione corrispondente da una versione precedente dello stesso file, non solo dalla versione più recente. Un segmento viene tradotto nuovamente quando il relativo testo sorgente cambia. Per modificare questo comportamento:

* `--force` ritraduce tutto il contenuto e sovrascrive le traduzioni esistenti. Le modifiche locali vengono perse e ti vengono addebitate le nuove traduzioni.
* `--force-download` riscarica le traduzioni e sovrascrive le modifiche locali senza ritradurre.

```bash
npx gt translate --force
```

## Etichettare un&#39;esecuzione di traduzione [#tagging]

Usa `--tag` e `-m` per etichettare un&#39;esecuzione con un identificatore facilmente leggibile, così da rendere più semplice tenere traccia delle versioni nel Dashboard.

```bash
npx gt translate --tag v2.1.0 -m "Added checkout page translations"
```

Passa `--tag` senza specificare alcun valore per usare l&#39;attuale commit hash di Git come tag e il messaggio del commit come messaggio associato. Il tagging non è bloccante: se fallisce, l&#39;esecuzione della traduzione continua.

## Pubblica sul CDN [#publish]

Per impostazione predefinita, le traduzioni vengono salvate localmente. Aggiungi `--publish` per pubblicarle anche sul CDN di General Translation, così da poterle caricare a runtime.

```bash
npx gt translate --publish
```

*Nota: abilita prima il CDN nelle impostazioni del progetto. Senza, il comando viene eseguito e la traduzione va a buon fine, ma il passaggio di pubblicazione fallisce con un avviso.*

## Next steps

- /docs/cli/guides/managing-translations
- /docs/cli/guides/branching
- /docs/cli/guides/configuring
- /docs/cli/guides/using-autoderive

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
