mirror of https://github.com/garrytan/gstack.git
The upgrade flow uses `git reset --hard origin/main` to advance HEAD. This trips destructive-command blockers (Claude Code PreToolUse hooks, pre-commit wrappers, /careful, /guard) and can abort auto-upgrades mid-flow. Switch to `git merge --ff-only origin/main` as the primary path. Falls back to the old behavior if fast-forward fails (divergent history, local commits). Clean global installs never hit the destructive flag. Also switches `git stash` to `git stash push --include-untracked -m "pre-upgrade-<date>"` so untracked build artifacts (.bak/, compiled binaries) don't block the merge, and the stash is self-describing. Tested on Windows 11 with a Claude Code PreToolUse guard that blocks destructive git operations. Upgraded from v0.16.2.0 to v0.18.1.0 cleanly via the ff-only path, setup regenerated customizations as expected. |
||
|---|---|---|
| .. | ||
| migrations | ||
| SKILL.md | ||
| SKILL.md.tmpl | ||