# gt: General Translation CLI tool: gt download
URL: https://generaltranslation.com/ru/docs/cli/reference/commands/download.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Скачивание готовых переводов из General Translation. Справочник API для команды gt download.

Скачивает готовые переводы, которые ранее были отправлены на перевод с помощью [`gt enqueue`](/docs/cli/reference/commands/enqueue) или [`gt stage`](/docs/cli/reference/commands/stage), и сохраняет их по путям вывода, указанным в вашей конфигурации. См. [Управление переводами](/docs/cli/guides/managing-translations#split).

*Примечание: только для использования в Production. Требуются `GT_API_KEY` и `GT_PROJECT_ID` для Production.*

```bash
npx gt download
```

## Как это работает [#how-it-works]

1. Читает `gt.config.json`, чтобы определить конфигурацию файлов.
2. Читает данные подготовленной версии, если включён `stageTranslations`; в противном случае собирает файлы и вычисляет их хеши, чтобы определить, что нужно скачать.
3. Опрашивает API General Translation, чтобы узнать, какие переводы уже готовы.
4. Сохраняет файлы перевода по путям вывода, указанным в вашей конфигурации.

Файлы, которые всё ещё обрабатываются, пропускаются. Повторно запустите `gt download`, чтобы скачать их позже.

## Флаги [#flags]

`download` принимает полный набор флагов [`gt translate`](/docs/cli/reference/commands/translate#flags), кроме флагов сканирования исходного (`--src`, `--dictionary`, `--tsconfig`/`--jsconfig`, `--inline`, `--ignore-errors`), которые используются только при сканировании исходного кода. Поддерживаются все перечисленные ниже флаги; на запуск, предназначенный только для скачивания, влияют флаги API, конфигурация, timeout, download и branch.

| Параметр                        | Описание                                                                                        | Тип        | Необязательно | По умолчанию     |
| ------------------------------- | ----------------------------------------------------------------------------------------------- | ---------- | ------------- | ---------------- |
| `--api-key <key>`               | production API key.                                                                             | `string`   | Да            | `GT_API_KEY`     |
| `--project-id <id>`             | project ID.                                                                                     | `string`   | Да            | `GT_PROJECT_ID`  |
| `--version-id <id>`             | ID версии для скачивания.                                                                       | `string`   | Да            | Хэш content      |
| `-c, --config <path>`           | Путь к файлу конфигурации.                                                                      | `string`   | Да            | `gt.config.json` |
| `--default-locale <locale>`     | Исходная локаль проекта.                                                                        | `string`   | Да            | `en`             |
| `--locales <locales...>`        | Дополнительные целевые локали, добавляемые к locales из конфигурации.                           | `string[]` | Да            | —                |
| `--timeout <seconds>`           | Тайм-аут ожидания в секундах.                                                                   | `number`   | Да            | `900`            |
| `--dry-run`                     | Выполнить разбор и проверку без вызова API.                                                     | `boolean`  | Да            | `false`          |
| `--force`                       | Сбросить кэш переводов и перевести заново.                                                      | `boolean`  | Да            | `false`          |
| `--force-download`              | Перезаписать локальные файлы, пропуская проверки `gt-lock.json`.                                | `boolean`  | Да            | `false`          |
| `--save-local, --no-save-local` | Принимается общим парсером флагов, но не сохраняет изменения при запуске только для скачивания. | `boolean`  | Да            | `false`          |
| `--publish`                     | Опубликовать переводы в CDN.                                                                    | `boolean`  | Да            | `false`          |
| `--enable-branching`            | Включить отслеживание на основе branch.                                                         | `boolean`  | Да            | —                |
| `--branch <branch>`             | Имя branch вместо автоопределения.                                                              | `string`   | Да            | —                |
| `--disable-branch-detection`    | Использовать только указанную branch, без определения связей.                                   | `boolean`  | Да            | `false`          |
| `--remote-name <name>`          | Git remote, используемый для определения branch.                                                | `string`   | Да            | `origin`         |
| `--tag [value]`                 | Пометить запуск tag; если значение не указано, оно автоматически определяется из git.           | `string`   | Да            | —                |
| `-m, --message <message>`       | Сообщение, прикреплённое к tag перевода.                                                        | `string`   | Да            | —                |

`download` также принимает экспериментальные флаги, перечисленные в разделе [`gt translate`](/docs/cli/reference/commands/translate#experimental) (например, `--experimental-clear-locale-dirs`, который очищает каталоги локалей перед записью новых переводов).

## Пример [#example]

```bash
# Этап 1: загрузка исходных файлов
npx gt upload

# Этап 2: постановка переводов в очередь
npx gt enqueue

# Этап 3: скачивание готовых переводов (эта команда)
npx gt download
```

## Другие замечания [#notes]

* Когда включён `stageTranslations`, `download` использует данные подготовленной версии; иначе он собирает файлы и вычисляет их хеши, чтобы определить, что нужно скачать.
* `download` опрашивает API, пока переводы не будут готовы или пока не истечёт `--timeout`, поэтому его можно запускать в более поздней задаче CI, чем [`gt enqueue`](/docs/cli/reference/commands/enqueue).

- Подготовленный файл остаётся подготовленным в `gt-lock.json`, пока не будут скачаны все настроенные локали.
- `_versionId` обязателен только если скачивание включает встроенный шаблон GTJSON и `omitConfigIds` имеет значение `false`. Проекты, содержащие только файлы, включая проекты только с Lottie, в нём не нуждаются.

## Sitemap

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