⇤ ← Revision 1 as of 2013-05-20 19:52:50
141
Comment:
|
4137
More about Conventional Commits, plus Emoji
|
Deletions are marked like this. | Additions are marked like this. |
Line 2: | Line 2: |
== Conventional Commits format == {{{ <type>(<scope>): <subject> <body> <footer> }}} Where: <type> is one of: External-facing stuff, important to publish to users. * feat or new ✨: New feature. Correlates to MINOR in Semantic Versioning. * feat: add beta sequence * fix 🐛: Bug fix. Correlates to PATCH in Semantic Versioning. * fix: remove broken confirmation message * security 🔒: security-related fix * typo ✏️: extremely minor fix * perf ⚡: A code that improves performance. Sometimes a subset of refactor. * config ⚙️: Configuration change, e.g. modify a default. * i18n 🌐 or 💬: Internationalization/translation addition, fix. Internal repository-related: * initial 🎉: Initial commit of something, may not yet work. * revert ⏪: revert of previous behavior, fix, or feature * test ✅ or 🚨: Adding new test or making changes to existing test * test: ensure Tayne retains clothing * upgrade 🔗: upgrade an external dependency * deps 🔗: Add, upgrade, or anything to do with an external dependency. Internal changes, not user-facing. * chore 🔧: Code change that external user won't see (e.g. change to .gitignore file) * chore: add Oyster build script * ci 👷: CI-related change, subset of chore. * ci 💚: Fix CI * build 📦: Build related changes (e.g. cmake, Broccoli, grunt). Subset of chore. * deploy or release 🚀: New version, snapshot, or deploy. Refactor-related, i.e. does not add new features. * refactor ♻️: A code that neither fix bug nor adds a feature. (e.g. semantic changes like renaming a variable/ function name) * refactor: share logic between component1 and component2 * docs 📚: Documentation related changes. Subset of refactor. * docs: explain hat wobble * style 🎨: Code change related to styling, like improving structure or formatting. Subset of refactor. * style: convert tabs to spaces * style: format w/ black * rename 🚚: Move files. Subset of refactor. * remove 🗑: Remove deprecated code no longer used. <scope> refers to the module or component. Examples: * init * runner * watcher * config * web-server * proxy <subject> is the first line of the commit message, and: * 70c or less * Uses imperative, present tense. "add" vs "adds" or "added", "fix" vs "fixes" or "fixed". * Do not end with period <body> should: * Includes motivation for the change, and contrasts previous behavior/implementation vs new behavior/implementation * Describe what the commit will do, not what you did. * Wrap at 72c. <footer> should: * Be one per line, and follow the [[https://git-scm.com/docs/git-interpret-trailers|git trailer format]]. That is, each line is a key–value pair, separated by either `:<space>` or `<space>#`. * `Closes #${BUG_NO}`, e.g. `Closes #123` if the commit closes an issue in your issue tracker. * `BREAKING-CHANGE: ${description}` to describe this commit breaks previous behavior/interface. See also: * [[https://karma-runner.github.io/6.3/dev/git-commit-msg.html|Karma Git Commit Msg]] * [[https://365git.tumblr.com/post/3308646748/writing-git-commit-messages|365Git: Writing git commit messages]] * [[https://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html|tbaggery - A note about git commit messages]] * [[https://sparkbox.com/foundry/semantic_commit_messages|Semantic Commit Messages]] * Emoji was taken from [[https://github.com/folke/devmoji|folke/devmoji]] and Good examples: * [[https://github.com/eslint/eslint/commits/master|eslint commit history]] and [[https://gitmoji.dev/gitmoji.dev]] == Semantic Branch Names == https://gist.github.com/seunggabi/87f8c722d35cd07deb3f649d45a31082 * feature/: New feature * bugfix/: Bug fix * docs/: Documentation change * style/: Style change * refactor/: Refactor * test/: Adding tests, refactoring tests, etc. * chore:/ Chore |
Git Commit Message conventions for AngularJS
Conventional Commits format
<type>(<scope>): <subject> <body> <footer>
Where:
<type> is one of:
External-facing stuff, important to publish to users.
- feat or new ✨: New feature. Correlates to MINOR in Semantic Versioning.
- feat: add beta sequence
- fix 🐛: Bug fix. Correlates to PATCH in Semantic Versioning.
- fix: remove broken confirmation message
- security 🔒: security-related fix
- typo ✏️: extremely minor fix
- perf ⚡: A code that improves performance. Sometimes a subset of refactor.
- config ⚙️: Configuration change, e.g. modify a default.
- i18n 🌐 or 💬: Internationalization/translation addition, fix.
Internal repository-related:
- initial 🎉: Initial commit of something, may not yet work.
- revert ⏪: revert of previous behavior, fix, or feature
- test ✅ or 🚨: Adding new test or making changes to existing test
- test: ensure Tayne retains clothing
- upgrade 🔗: upgrade an external dependency
- deps 🔗: Add, upgrade, or anything to do with an external dependency.
Internal changes, not user-facing.
- chore 🔧: Code change that external user won't see (e.g. change to .gitignore file)
- chore: add Oyster build script
- ci 👷: CI-related change, subset of chore.
- ci 💚: Fix CI
- build 📦: Build related changes (e.g. cmake, Broccoli, grunt). Subset of chore.
- deploy or release 🚀: New version, snapshot, or deploy.
Refactor-related, i.e. does not add new features.
- refactor ♻️: A code that neither fix bug nor adds a feature. (e.g. semantic changes like renaming a variable/ function name)
- refactor: share logic between component1 and component2
- docs 📚: Documentation related changes. Subset of refactor.
- docs: explain hat wobble
- style 🎨: Code change related to styling, like improving structure or formatting. Subset of refactor.
- style: convert tabs to spaces
- style: format w/ black
- rename 🚚: Move files. Subset of refactor.
- remove 🗑: Remove deprecated code no longer used.
<scope> refers to the module or component. Examples:
- init
- runner
- watcher
- config
- web-server
- proxy
<subject> is the first line of the commit message, and:
- 70c or less
- Uses imperative, present tense. "add" vs "adds" or "added", "fix" vs "fixes" or "fixed".
- Do not end with period
<body> should:
- Includes motivation for the change, and contrasts previous behavior/implementation vs new behavior/implementation
- Describe what the commit will do, not what you did.
- Wrap at 72c.
<footer> should:
Be one per line, and follow the git trailer format. That is, each line is a key–value pair, separated by either :<space> or <space>#.
Closes #${BUG_NO}, e.g. Closes #123 if the commit closes an issue in your issue tracker.
BREAKING-CHANGE: ${description} to describe this commit breaks previous behavior/interface.
See also:
Emoji was taken from folke/devmoji and
Good examples:
Semantic Branch Names
https://gist.github.com/seunggabi/87f8c722d35cd07deb3f649d45a31082
- feature/: New feature
- bugfix/: Bug fix
- docs/: Documentation change
- style/: Style change
- refactor/: Refactor
- test/: Adding tests, refactoring tests, etc.
- chore:/ Chore