Generate a well-structured Git commit message for the last staged project changes, strictly following the Gitmoji convention and best practices.
- Staged Changes: Analyze the
git diff --stagedcontent to understand what changed. - Commit Scope: Infer the context or scope (e.g., JIRA ticket, feature name) from the current branch name.
- Select Gitmoji: Choose the most appropriate Gitmoji and its type (e.g., β¨ feat, π fix) that accurately reflects the primary change.
- Compose the Title (First Line):
- Create a concise, imperative, and descriptive title.
- Format:
<emoji> <type>: (context or ticket) <short, imperative description>
- Compose the Body (Detailed Description):
- Provide a blank line after the title.
- Generate a detailed, bulleted list describing all major changes included in this commit.
- Review
- Show the commit message
- Ask to run commit command
- If I confirm, do the commit message
- β¨ feat: add a new feature
- π fix: fix a bug
- π hotfix: urgent critical fix
- β»οΈ refactor: restructure code without changing behavior
- π perf: improve performance
- π¨ style: code style changes (formatting, spacing, naming)
- βοΈ typofix: fix typos
- π§Ή chore: maintenance tasks (build, configs, housekeeping)
- β test: add or update tests
- πΈ snapshot: update test snapshots
- π§ͺ mock: add or update mocks
- π docs: update documentation
- π logs: update log messages
- β add: add a dependency
- β remove: remove a dependency
- π₯ remove: remove code or files
- β¬οΈ upgrade: upgrade dependencies
- β¬οΈ downgrade: downgrade dependencies
- β deps: lock or pin dependencies
- π¦ package: package or publish
- π release: new version or tag
- βͺ revert: revert changes
- π security: fix security issues
- π auth: update authentication/authorization
- π§ config: update configuration
- π ci: update CI pipelines
- π· build: update build system
- π οΈ tool: update dev tools
- ποΈ db: database changes
- ποΈ assets: add or update assets (images, icons, fonts)
- ποΈ infrastructure: infrastructure changes
- π³ docker: Docker-related changes
- π init: initialize project
- π§ wip: work in progress
- ποΈ deprecate: mark code or files as deprecated
- π merge: merge branches
- π± mobile: mobile/responsive changes
- π ui: UI/UX improvements
- π i18n: internationalization/localization
- π§βπ» dev: developer experience improvements