A localization approach where translation files are stored, versioned, and managed directly in a Git repository alongside the source code.
In Git-based localization, translation files live in the same repository as the codebase. Developers commit string files in formats like JSON, YAML, or XLIFF, and changes to translatable content are tracked through pull requests and branches, just like any other code change. This keeps localization tightly coupled with the development cycle and removes the need for manual file handoffs between developers and translators.
The main appeal is consistency. When a new feature ships, the strings for it can be reviewed, approved, and merged as part of the same workflow the team already uses. There is no separate process to manage, and translation history follows the same audit trail as the rest of the codebase.
In practice, Git-based localization often connects to a translation management system (TMS) through an integration or CLI tool. Developers push updated source files to the repository, the TMS picks them up automatically, translations are completed, and the results are committed back. This creates a loop where localization happens in parallel with development rather than after it.
This approach works well with continuous localization, where strings are translated incrementally as they are written rather than in large batches before a release.
Git-based localization can create friction when translators are not comfortable working in a developer environment. Conflicts can also arise if translated files are edited both in the repository and in an external tool at the same time. A clear source of truth and a well-configured sync process between the repo and the TMS are important to avoid overwrites.
Localazy integrates with GitHub, GitLab, and Bitbucket, allowing teams to automate the full localization loop from code push to translated file delivery. You can configure the CLI to upload new source strings and download translations as part of your existing CI/CD pipeline, keeping developers out of the day-to-day translation process after the initial setup.
See how to connect your repository in the Localazy CLI documentation.