sync-modules

Synchronize control-center master with upstream changes and update submodule pointers safely.

10|Updated Nov 29, 2025
One-click install
npx skills add https://github.com/benjaminshafii/digital-empire --skill sync-modules
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: sync-modules
Source: https://github.com/benjaminshafii/digital-empire/tree/main/.opencode/skill/sync-modules
Command: npx skills add https://github.com/benjaminshafii/digital-empire --skill sync-modules

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill keeps the control-center master synchronized with upstream changes while safely updating submodule pointers to maintain a clean and reproducible git state.

Core Features & Use Cases

  • Synchronize the control-center master with upstream changes and ensure all submodules are initialized and updated.
  • Update OpenWork and OpenWork Landing submodule pointers when needed, recording new gitlinks to preserve traceability.
  • Safety-first operations and status verification to prevent destructive changes and maintain a deterministic repository state.

Quick Start

Run the standard flow to fetch updates and refresh submodule pointers:

  • git fetch origin --prune
  • git pull --ff-only origin master
  • git submodule update --init --recursive

Frequently Asked Questions about sync-modules

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I safely sync git submodules with upstream master changes?

To safely sync git submodules with upstream master, fetch and pull the latest commits using a fast-forward only approach, then run a recursive submodule update to initialize and refresh pointers while maintaining a clean repository state.

What is the best way to update git submodule pointers without losing local changes?

Updating git submodule pointers safely requires non-destructive operations that fetch upstream changes first, apply fast-forward only pulls, and verify repository status after updates to prevent losing local changes.

Why does my git submodule point to an old commit after pulling from upstream?

A git submodule points to an old commit after pulling from upstream when the submodule pointers are not explicitly updated, requiring a recursive initialization and update to record the new gitlinks and synchronize the state.

How do I keep a git multi-repository workflow reproducible when syncing upstream?

Keep a git multi-repository workflow reproducible by synchronizing the master branch with upstream and recording new submodule gitlinks, which verifies repository status and ensures a deterministic configuration across all dependencies.

Can I use a fast-forward only pull to sync git submodules without merge conflicts?

Yes, using a fast-forward only pull to sync git submodules prevents merge conflicts by enforcing non-destructive operations, ensuring the master branch updates linearly with upstream changes before refreshing submodule pointers.