# gt: General Translation CLI tool: gt git setup
URL: https://generaltranslation.com/it/docs/cli/reference/commands/git-setup.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Configura i driver di merge di Git per i file di traduzione generati. Riferimento API per il comando gt git setup.

Usa `gt git setup` per eseguire il merge di `gt-lock.json` e dei file GTJSON generati in base al loro contenuto strutturato, anziché trattarli come testo semplice.

## Panoramica [#overview]

```bash
npx gt git setup [options]
```

Esegui il comando da un worktree Git che contiene un file `gt.config.json`.

## Come funziona [#how-it-works]

1. Individua la root del Git worktree corrente.
2. Aggiunge al file `.gitattributes` nella root le voci dei driver di merge per `gt-lock.json` e per il pattern `files.gt.output` configurato.
3. Registra entrambi i driver di merge nella configurazione Git locale del repository.
4. Facoltativamente, imposta [`omitConfigIds: true`](/docs/cli/reference/config#omit-config-ids) e rimuove gli ID di configurazione generati.

Il comando mantiene invariato il contenuto esistente di `.gitattributes` e aggiunge solo le voci mancanti, quindi puoi rieseguirlo dopo aver modificato il percorso di output GTJSON.

## Flag [#flags]

| Parametro                    | Descrizione                                                                        | Tipo      | Facoltativo | Predefinito                                     |
| ---------------------------- | ---------------------------------------------------------------------------------- | --------- | ----------- | ----------------------------------------------- |
| `-c, --config <path>`        | Percorso di `gt.config.json`.                                                      | `string`  | Sì          | Determinato automaticamente                     |
| `--dry-run`                  | Mostra le modifiche previste ai file e alla configurazione di Git senza scriverle. | `boolean` | Sì          | `false`                                         |
| `--omit-config-ids`          | Imposta `omitConfigIds: true` e rimuove `_versionId` e `_branchId`.                | `boolean` | Sì          | `false`                                         |
| `--driver-command <command>` | Comando usato da Git per invocare la CLI installata.                               | `string`  | Sì          | Binario `gt` locale, altrimenti `gt` nel `PATH` |

## Esempio [#example]

Visualizza l&#39;anteprima degli attributi generati e della configurazione Git locale:

```bash
npx gt git setup --dry-run
```

Applica la configurazione ed escludi gli ID generati da `gt.config.json`:

```bash
npx gt git setup --omit-config-ids
```

In un progetto pnpm in cui la CLI non è installata localmente, specifica come Git deve invocarla:

```bash
npx gt git setup --driver-command "pnpm exec gt"
```

## Altre note [#notes]

* **Configurazione interattiva:** se `omitConfigIds` non è già abilitato, un&#39;esecuzione interattiva chiede se abilitarlo, con risposta predefinita sì. Le esecuzioni non interattive e quelle di prova (dry run) non mostrano alcuna richiesta; passa `--omit-config-ids` per abilitarlo.
* **Conflitti GTJSON:** le modifiche a chiavi di primo livello diverse vengono unite automaticamente. Se entrambi i branch modificano la stessa chiave in modo diverso, Git segnala un normale conflitto di merge.
* **Conflitti del lockfile:** il driver del lockfile richiede `gt-lock.json` versione 2. Per rigenerare un lockfile di una versione precedente, esegui [`gt translate`](/docs/cli/reference/commands/translate) o [`gt stage`](/docs/cli/reference/commands/stage) prima di eseguire il merge.
* **Ambito:** il comando scrive le impostazioni del driver di merge con `git config --local`, quindi la configurazione va eseguita separatamente in ogni clone.

### Cronologia delle versioni

| Versione  | Modifiche                                                                                               |
| --------- | ------------------------------------------------------------------------------------------------------- |
| `2.14.53` | Aggiunti `gt git setup`, i driver di merge strutturati e la possibilità di omettere l&#39;ID nella config. |

## Sitemap

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