skills/mindgames/skills/github-sync

github-sync

SKILL.md

GitHub Sync

Overview

Use scripts/sync-repo.sh instead of rewriting ad-hoc git fetch and git pull logic. The script resolves the sync target, creates a local tracking branch when needed, and only performs fast-forward updates.

Workflow

  1. Check whether the user wants the remote default branch, a specific branch, or the current branch.
  2. Prefer origin unless the user explicitly asks for another remote.
  3. Run the bundled script:
scripts/sync-repo.sh
scripts/sync-repo.sh --branch main
scripts/sync-repo.sh --current
  1. If the script reports that a branch switch would be unsafe because the worktree is dirty, stop and ask the user instead of stashing, resetting, or forcing the switch.
  2. After a successful sync, use git status -sb when the user wants explicit verification.

Branch Selection

  • No flags: sync the remote default branch from origin/HEAD.
  • --branch <name>: sync that branch from origin/<name>.
  • --current: sync the currently checked out branch without switching away first.

Hard Rules

  • Never auto-stash, reset, rebase, or create a merge commit as part of sync.
  • Use fast-forward-only updates.
  • If origin/HEAD is unavailable and no explicit branch was provided, stop and ask which branch to sync.
  • If the requested remote branch does not exist, stop and report the missing branch clearly.
  • For branch-creation workflows that must branch from updated main, run scripts/sync-repo.sh --branch main first.

Script

  • scripts/sync-repo.sh: fetches from origin, resolves the target branch, creates a local tracking branch when needed, and fast-forwards it safely.
Weekly Installs
3
First Seen
5 days ago
Installed on
mcpjam3
gemini-cli3
claude-code3
junie3
windsurf3
zencoder3