#!/usr/bin/env bash
set -euo pipefail

# Push each submodule to its tracked remote/branch
git submodule foreach --recursive '
  BRANCH=$(git symbolic-ref --short HEAD 2>/dev/null || echo "")
  if [ -n "$BRANCH" ]; then
    git push origin "$BRANCH"
    echo "  ✔ pushed $name ($BRANCH)"
  else
    echo "  ⚠ skipping $name (detached HEAD)"
  fi
'

# Push the parent repo
git push
echo "✔ pushed parent repo"
