Git Release Management Skill π
This skill defines the standards for professional Git commits and automated release tagging. Following these patterns ensures a clean, searchable history and professional-grade release notes for users and contributors.
π Conventional Commits
Always use the Conventional Commits specification for commit messages. This makes the history readable and allows for automated changelog generation.
Format
<type>(<scope>): <description>
Types
feat: A new feature (e.g.,feat(ui): add dark mode support)fix: A bug fix (e.g.,fix(updater): resolve permission denied on Windows)docs: Documentation only changes (e.g.,docs: translate README to English)style: Changes that do not affect the meaning of the code (white-space, formatting, etc)refactor: A code change that neither fixes a bug nor adds a featureperf: A code change that improves performancetest: Adding missing tests or correcting existing testsbuild: Changes that affect the build system or external dependenciesci: Changes to CI configuration files and scriptschore: Other changes that don't modify src or test filesrevert: Reverts a previous commit
Guidelines
- Use the imperative mood ("add", not "added").
- Do not capitalize the first letter of the description.
- No period (.) at the end of the description.
π·οΈ Professional Git Tagging
When creating a release tag, provide a structured and descriptive message that acts as a human-readable changelog.
Versioning
- Use Semantic Versioning (
vMajor.Minor.Patch). - Always prefix with
v(e.g.,v2.1.0).
Tag Message Template
Use emojis and logical sections to categorize changes:
vX.Y.Z - [Highlight Title]
π [Impactful Changes/Features]
- Point 1 explaining the 'Why' and 'What'.
- Point 2...
π οΈ [Improvements & Fixes]
- Fixed issue X by doing Y.
- Optimized Z for better performance.
π [Documentation & Meta]
- Updated README with instructions.
- Added contributing guidelines.
π€ [Contributors/Community]
- Shout out to community members if applicable.
π» Practical Usage Commands
Professional Commit
git add .
git commit -m "feat(api): optimize response time by caching results"
Professional Tagging
git tag -a v2.1.0 -m "v2.1.0 - Premium UI Revamp Release
β¨ Major UI Update:
- Complete frontend redesign featuring a 3-column dashboard layout.
- Premium Glassmorphism theme with dynamic backgrounds.
π οΈ Improvements:
- CI/CD linting fixes for cross-platform support.
- Optimized build scripts for faster deployment."
# Push to origin
git push origin main --tags
π Premium Aesthetics in Release Notes
- Use bold text for keywords.
- Use bullet points for readability.
- Add a summary line at the top of the tag message.
- Group related changes together to tell a story of "Evolution".
