Files
gitea-devtools/skills/sporel-commit/SKILL.md

38 lines
1.5 KiB
Markdown

---
name: sporel-commit
description: Commit + push all dirty local Sporel repos in one shot with a shared message, using each repo's own author. Use after making changes across multiple Sporel repos instead of looping git add/commit/push by hand.
---
# Sporel Commit
Commits every **dirty** local Sporel repo with one message and pushes the safe
ones — replacing the manual `for repo; do cd; git add; git commit; git push`
loop.
```bash
/root/projects/gitea-devtools/sporel-commit.sh --dry-run "<msg>" # ALWAYS preview first
/root/projects/gitea-devtools/sporel-commit.sh "<msg>"
```
## How to use
1. **Always `--dry-run` first.** It lists which repos would be committed, how
many files each, and which author it will use. Confirm that matches intent.
2. Run without `--dry-run` to commit + push.
## Behaviour
- Author per repo = that repo's **own last-commit author** (Sporel repos are
mixed Calic / Axel Meyer — never assume uniform); email always
`axel.meyer@durania.net`.
- `git add -A` then commit with the shared message.
- Pushes only if the branch is ahead and **not** diverged. Diverged repos are
committed locally but reported for manual rebase — never force-pushed.
- CI triggers on tags (`v0.x.0`), not master pushes, so pushing WIP is safe.
Exit `0` clean · `2` attention (diverged / no upstream) · `1` error. Address
every ATTENTION line. For tagged releases use `/deploy` instead — this is for
ordinary commits across many repos.
Complements `/sporel-sync` (pull/push reconciliation, no commit).