How can I use one Github branch for multiple identical Shopify stores?

Topic summary

Goal: Share one theme codebase across multiple identical Shopify OS 2.0 stores while keeping store‑specific theme settings (config/settings_data.json and template JSON files) unique.

Early approaches:

  • Single repo with one “live” branch per store and a Release branch. A GitHub Actions workflow pushes code to all live branches while excluding settings files. Shared example repo is experimental; others report paths-ignore only controls triggers, not what gets merged, risking overwrites of config/templates.
  • Some agencies use separate repos per client (template repo), but it’s hard to propagate base updates.

Working strategies shared:

  • Multi-repo + rsync action: One main repo and one repo per storefront, each with branches (master, production, staging, preliminary- production/staging). Action syncs from main to each child repo’s preliminary branch, excluding config and templates, then merges to live branches. Manual conflict resolution if needed.
  • New development: A purpose-built GitHub Action (shopify-multi-store-deployer) reported to work well. It excludes store-specific settings files while allowing settings_schema changes to propagate. Caveat: app installs that inject code can cause conflicts.

Open items:

  • Clarification on configuring the deployer for multiple destination branches.
  • Alternative idea using Git submodules noted but unproven.
  • Third-party app Themeflow suggested. Discussion remains active without a single canonical solution.
Summarized with AI on December 21. AI used: gpt-5.

I have had all the struggles outlined in this entire thread. Could you share a repo with your solution? It would be lovely to be able to dig into and understand.