# Sync a string set with GitHub

**Category:** [String Manager](https://help.totalctrl.app/hc/totalctrl/totalctrl-help-center/en-US/categories/strings)
**Updated:** 2026-08-19

## How GitHub sync works

String Manager generates ready-to-use **GitHub Actions workflows** so your repository and your string set stay aligned. Configure a connection in the set's **Settings** with the repository, branch, file path, file format, and (optionally) a locale.
## Download the workflows

From Settings, download any of three workflow files:

- **Push** — exports the chosen locale from String Manager and commits it to your repo at the configured file path.
- **Pull** — reads the file from your repo and updates strings in the set.
- **Analysis** — runs the quality checks in CI. You can choose to fail the build on errors and/or on warnings, so broken localization blocks a merge.

Each downloaded `.yml` is pre-filled with your set, file path, format, and branch. Commit it under `.github/workflows/` in your repository.
## The inbound webhook

When you push changes to the configured file in your repo, GitHub calls String Manager's webhook. The request is verified with an HMAC signature against the connection's webhook secret, the changed file is fetched and parsed, and matching strings are upserted into the set automatically — no manual import needed.
## Tips

- Keep the file format in the connection matching what your repo actually stores.
- Use one connection per locale or file you want to keep in sync.
- Pair the analysis workflow with branch protection to enforce translation quality on every pull request.

---

## Related Articles

- [String Manager overview](https://help.totalctrl.app/en-US/articles/string-manager-overview)
- [Import and export strings](https://help.totalctrl.app/en-US/articles/import-and-export-strings)
- [Uploading a file and choosing the file type](https://help.totalctrl.app/en-US/articles/string-manager-upload-file-type)
- [API, webhooks, and automation](https://help.totalctrl.app/en-US/articles/string-manager-integrations)
- [Supported file formats](https://help.totalctrl.app/en-US/articles/string-manager-supported-formats)

---
[← Back to TotalCtrl Help Center](https://help.totalctrl.app/en-US/)