Skip to content

Instantly share code, notes, and snippets.

@joshbuchea
Last active June 5, 2025 03:56
Show Gist options
  • Save joshbuchea/6f47e86d2510bce28f8e7f42ae84c716 to your computer and use it in GitHub Desktop.
Save joshbuchea/6f47e86d2510bce28f8e7f42ae84c716 to your computer and use it in GitHub Desktop.
Semantic Commit Messages

Semantic Commit Messages

See how a minor change to your commit message style can make you a better programmer.

Format: <type>(<scope>): <subject>

<scope> is optional

Example

feat: add hat wobble
^--^  ^------------^
|     |
|     +-> Summary in present tense.
|
+-------> Type: chore, docs, feat, fix, refactor, style, or test.

More Examples:

  • feat: (new feature for the user, not a new feature for build script)
  • fix: (bug fix for the user, not a fix to a build script)
  • docs: (changes to the documentation)
  • style: (formatting, missing semi colons, etc; no production code change)
  • refactor: (refactoring production code, eg. renaming a variable)
  • test: (adding missing tests, refactoring tests; no production code change)
  • chore: (updating grunt tasks etc; no production code change)

References:

@keithpjolley
Copy link

Curious what people do when more than one type of "thing" is done in a single commit. For instance, to polish up some python code before committing I ran RightTyper, Trunk format, and then added in some comments on the code.

"Learn to commit between each task" is good advice but sometimes that horse is already out of the barn.

@harizjet
Copy link

nice script @cfgnunes; but you can also use pre-commit hook to enforce it.

@major-phyo-san
Copy link

Hi friends, if I make some changes like bug fixes and feature addition and I have to update the dependency management code (eg, composer.json, package.json, pom.xml, build.gradle etc) to reflect my release version, what would be the commit message for it. For example, I have a PHP composer package that I develop and maintain. I add a bug fix and a feature. The previous version is "version": "0.0.8", and I need to update my package version to be "version": "0.0.9", what would be the commit message for that composer.json.

@qoomon
Copy link

qoomon commented May 19, 2025

In case you are looking for a more detailed git conventional cheatsheet feel free to have a look at https://gist.github.com/5dfcdf8eec66a051ecd85625518cfd13

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment