Repository projects are the default setup for continuous app localization.
Who This Is For
Use repository projects when your team wants localization to run inside the same Git workflow used for app development.
This is usually the best fit when you:
- Keep iOS or Android localization files in source control.
- Want localization triggered from matching branches or pull requests.
- Prefer reviewing localization changes through pull requests instead of downloading files by hand.
Setup Flow
- Connect GitHub, GitLab, or Bitbucket.
- Select repository and branch.
- Choose project preferences such as tone, custom prompt, and rename/stale-key behavior.
- Configure repository automation rules if you want automatic push or pull request coverage.
- Start initial sync.
What Happens During Sync
A repository sync for app localization typically:
- Clones the selected branch.
- Detects supported localization files.
- Parses base and localized content.
- Queues missing or needs-review translations.
- Writes normalized output.
- Delivers the result through the matching automation path.
This gives you a repeatable path from source changes to review-ready localization updates.
Important Settings
- Repository Automation: Configure push rules, pull request rules, and manual sync.
- Auto Remove Stale Keys: Remove stale extracted keys.
- Auto Retranslate on Key Rename: Requeue translated rows when rename matching is detected.
Output
Repository projects can:
- Open or update localization pull requests for matching branches
- Check pull requests for missing localization coverage
- Optionally commit translation changes directly into selected pull request branches
- Keep repository updates reviewable instead of leaving localization changes in a side workflow
Common Mistakes
- Connecting the wrong branch and expecting updates from another branch.
- Assuming repository automation is one global toggle instead of separate push and pull request rules.
- Forgetting that pull request automation matches the target branch.
- Mixing large language rollouts with major base-copy changes in one run.
- Reviewing merged output without checking
NeedsReviewrows first.