Skip to main content

push-tag

Push a version tag and optionally create a GitHub release

Source facts

Repository
spiriMirror/libuipc
Last source activity
March 26, 2026 at 09:00
Detected SKILL.md language
English
Stars
335
Forks
68

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
push-tag
description
Push a version tag and optionally create a GitHub release
disable-model-invocation
true
# Push Tag ## Overview Push a new tag to the upstream repository. Optionally create a GitHub release. ## Steps 1. **Verify branch** ```bash git branch --show-current ``` - Must be on `main` branch. If not, switch: `git checkout main` 2. **Determine tag version** ```bash git tag --list ``` - If user provides a tag: validate it doesn't exist and is greater than latest - If no tag provided: auto-increment patch version (e.g., `v1.2.3` → `v1.2.4`) 3. **Create and push tag** ```bash git tag <TAG> git push origin refs/tags/<TAG> ``` 4. **Create release (if requested)** - **Generate structured release notes** (do not use `--generate-notes`): 1. Get commits between previous tag and `<TAG>`: ```bash git log <PREV_TAG>..<TAG> --pretty=format:'%s' --no-merges ``` 2. **Summarize and structure** the changes into clear sections, e.g.: - **Features** – new functionality - **Fixes** – bug fixes - **Documentation** – docs, examples, guides - **Refactor / Chore** – internal changes, deps, tooling 3. **Write an overall summary** at the top of the release notes: a short paragraph describing the key themes, goals, or highlights of this release compared to the previous one. This gives readers a quick understanding of what changed and why. 4. Use concise, user-facing language. Group related changes. Avoid raw commit hashes or jargon unless helpful. 5. Write notes to a temp file (e.g. `release_notes.md`) and create the release: ```bash gh release create <TAG> --repo spiriMirror/libuipc --notes-file release_notes.md rm release_notes.md ``` **Note:** Always use `--repo spiriMirror/libuipc` to reference the upstream repository.
View on GitHub