| Command | What it does |
|---|---|
ct push | Sends the source file |
ct pull | Writes the translation files |
ct status | Shows how complete each language is on the branch |
ct merge <branch> | Merges a Continuous Translations branch into main |
ct init, ct snippet <github|gitlab> | Create ct.yml, print a CI job |
ct push #
Sends the source file. New and changed strings are updated, and a changed string sends its translations back to draft. Other Git branches become Continuous Translations branches of the same name, created from main.
| Option | Effect |
|---|---|
--translations | Also uploads the existing translation files (first import) |
--prune | Removes keys that left the file |
--dry-run | Only reports what would change |
push never overwrites existing translations, unless the project allows import overwrites. Pushing twice changes nothing, so a pipeline that commits pulled files won’t loop.
ct pull #
Writes the translations files for every active language, in the order of the source file. Only approved translations are written, unless you pass --drafts.
| Option | Effect |
|---|---|
--drafts | Include translations that are not approved yet |
--fallback | Fill gaps with the source text |
--language de | Limit the pull to one language |
--require-complete 100 | Fail before writing when a language is behind |
--check | Write nothing and exit 1 if a file is out of date |
pull replaces the translation files.
ct status #
Shows how complete each language is on the branch.
ct merge #
Merges a Continuous Translations branch into main, for example from the default-branch pipeline after a pull request was merged:
ct merge feature/checkout-v2Which branch #
The branch comes from, in order: --branch, CT_BRANCH, the CI variables of GitHub and GitLab (pull request branches first), or git.