- global CLAUDE.md (time tracking via MCP lesstime) - workspace CLAUDE.md (dev_malio inventory) - commands : ticket-writer, push-tickets-lesstime, full-project-review, bump-version - MCP install guide (Code + Desktop) + .mcp.json.example - scripts/install.sh + sync.sh
1.9 KiB
name, description, arguments
| name | description | arguments | |||||||
|---|---|---|---|---|---|---|---|---|---|
| bump-version | Bump the app version, commit, tag, and push |
|
Bump Version
Steps
-
Fetch remote: Run
git fetch originto get latest state. -
Check if local is behind: If local branch is behind remote, rebase first (
git rebase origin/{branch}). Stash unstaged changes if needed. -
Determine version: If
$ARGUMENTSis provided, use it (strip leadingvif present). Otherwise, readconfig/version.yaml, parse the currentapp.version, and increment the patch number (e.g.0.3.6→0.3.7). -
Check remote tags: Run
git ls-remote --tags originand verify tagv{version}does NOT already exist. If it does, keep incrementing patch until a free version is found, or ERROR if a specific version was requested. -
Update version file: Edit
config/version.yamlto setapp.version: '{version}'. -
Stage version file:
git add config/version.yaml— ALWAYS stage this file explicitly. -
Also stage any other pending changes: Check
git statusfor other staged files. If there are unstaged changes to tracked files, ask the user if they should be included. -
Commit: Commit with message
chore : bump version to v{version}. -
Tag: Create git tag
v{version}. -
Push: Run
git push origin {current_branch} --tags. -
Confirm: Display the new version, tag, and push result.
Critical Rules
- The version in
config/version.yamlMUST always match the git tag. - ALWAYS check remote tags BEFORE committing to avoid conflicts.
- ALWAYS
git add config/version.yamlexplicitly — never assume it's staged. - ALWAYS fetch and sync with remote BEFORE starting.
- Format:
v{version}for tags (e.g.v0.3.7), withoutvin yaml (e.g.0.3.7).