pcbjam/scripts/git-workflow/repos.sh
Gergő Törcsvári 0665b30762
chore(skills): include pcbjam-shared in the git-feature workflow
The pcbjam repo's own git-feature skills + scripts/git-workflow predated the
web/pcbjam-shared submodule and only covered root+kicad+wxwidgets. Add the MIT
contract repo as a fourth member everywhere:

- repos.sh: pcbjam_shared key (path web/pcbjam-shared, main `main`) + layout doc.
- assert-clean.sh / for-each-repo.sh: count-agnostic wording.
- git-feature-start/commit/sync/finish SKILL.md: pcbjam-shared in the branch /
  commit (kicad, wxwidgets, pcbjam-shared, then root) / rebase (root first) /
  finish orders; root pointer-bump staging + diff now include web/pcbjam-shared,
  and the root stage step excludes it like the other submodule trees.

Mirrors the root pcbjam-private skills, which already covered shared.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-12 14:05:40 +02:00

44 lines
1.1 KiB
Shell
Executable file

#!/bin/bash
# Sourced library. Single source of truth for the 4-repo layout:
#
# root = pcbjam main
# ├── kicad (kicad/) wasm-port
# ├── wxwidgets (wxwidgets/) wasm-port
# └── pcbjam-shared (web/pcbjam-shared/) main [MIT contract]
#
# Bash variable names can't contain '-', so pcbjam-shared's KEY is
# `pcbjam_shared`; its path/display name keep the dash.
# Usage: source "$(dirname "$0")/repos.sh"
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
REPOS=(root kicad wxwidgets pcbjam_shared)
PATH_root="$ROOT_DIR"
PATH_kicad="$ROOT_DIR/kicad"
PATH_wxwidgets="$ROOT_DIR/wxwidgets"
PATH_pcbjam_shared="$ROOT_DIR/web/pcbjam-shared"
MAIN_root="main"
MAIN_kicad="wasm-port"
MAIN_wxwidgets="wasm-port"
MAIN_pcbjam_shared="main"
repo_path() {
local var="PATH_$1"
echo "${!var}"
}
repo_main() {
local var="MAIN_$1"
echo "${!var}"
}
run_git() {
# Echo before run so the user always sees what we're doing.
local repo="$1"; shift
local p
p=$(repo_path "$repo")
echo "+ git -C $p $*" >&2
git -C "$p" "$@"
}