git · git:20260825.12ce506 · 2026-08-25 · sha256 14fcaaa2dacd244e
git git:20260825.12ce506A
Immutable. This exact content never changes and is served at /api/v1/blob/14fcaaa2dacd244e.
--- name: git description: "git workflows for agents: ship (stage → commit → push), hunks (selective staging). never force push, never git add -A, conventional commits. triggers on: commit, push, stage, ship, git add, hunks, selective staging." --- # git ## constraints - stage files explicitly, NEVER `git add -A` (unstaged changes may not be yours) - NEVER force push (`--force`, `-f`, `--force-with-lease`) - if unsure which changes are yours, ask user - commit format: `type(scope): description` (lowercase, imperative) - types: `feat` `fix` `docs` `style` `refactor` `perf` `test` `chore` - prefer `gh` cli for github operations (PRs, issues, repo info) — auth is pre-configured via sops ## ship stage YOUR changes, commit, push. ```bash git status git add <your-files> git diff --staged git commit -m "type(scope): description" git push ``` if push fails (divergence): `git fetch origin && git rebase origin/main && git push` ## hunks selective staging without interactive mode. ```bash git hunks list # shows hunks with IDs git hunks add <id> # stages specific hunk git hunks add 1 3 5 # stage multiple hunks ``` use when you need to split changes across commits.