---
description: Push local main branch to origin for all managed workspace repos
---

# Push Repos

Pushes local `main` to `origin/main` for all workspace repositories.

// turbo

```bash
while IFS= read -r repo; do
  [[ -z "$repo" || "$repo" =~ ^# ]] && continue
  echo "━━━ $repo ━━━"
  (cd ~/code/mygh/$repo && git push origin main)
done < ~/code/mygh/learning_ai_common_plat/.windsurf/workflows/repos.txt
```

## What it does:

1. Iterates over all repositories listed in the canonical `repos.txt`
2. Runs `git push origin main` in each
3. Fails fast if a repo has diverged from remote (resolve with rebase manually)

## Repositories:

See `repos.txt` for the canonical list of all workspace repositories.

## When to use:

- After committing a batch of changes locally
- After running `/repo_commit-workspace`
- To sync local work to GitHub before switching machines

## Notes:

- Only pushes `main` — does not push other branches
- Will fail safely if remote has diverged — run `/repo_sync-repos` first then rebase
- Use `/repo_sync-repos` to pull before pushing if you've been working on another machine
