mirror of
https://github.com/conventional-commits/conventionalcommits.org.git
synced 2026-03-22 12:44:37 -05:00
Case of commit messages #12
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @dijonkitchen on GitHub (Nov 23, 2017).
Originally assigned to: @dijonkitchen on GitHub.
Why does the spec have lowercase as the default? I figure as a title for a commit, it'd be uppercase.
Reference:
http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
@stevemao commented on GitHub (Nov 23, 2017):
It was defined by the angular convention spec.
@dijonkitchen commented on GitHub (Nov 27, 2017):
I looked at the Angular commit convention but couldn't find a reason why though. The only thing I could guess would be that it's easier to parse, but lowercase looks off as the start of all the Subject lines.
@stevemao commented on GitHub (Nov 28, 2017):
I guess it's just easy to type. no particular reason. But good to have consistency.
@dijonkitchen commented on GitHub (Jan 26, 2018):
I figure the best practice if we're setting a standard is capitalized.
For example:
@bcoe commented on GitHub (Mar 16, 2018):
@stevemao @dijonkitchen joining this conversation late ... could we make our default parser for conventional commit messages not care about case? seems like it's not something worth being opinionated about.
@dijonkitchen commented on GitHub (Mar 16, 2018):
Sure, that makes sense to me! Though I think uppercase looks better for readability, the parser for the changelog should be agnostic!
@stevemao commented on GitHub (Mar 18, 2018):
I'm not opposing anyone here :) I see more people typing lower cased sentences in the commit messages in general. Also I've always wanted tools like conventional-changelog auto capitalise the first letter in a sentence.
@damianopetrungaro commented on GitHub (May 2, 2018):
I prefer lowercase too, do we need something for this?
@hutson commented on GitHub (Jul 16, 2018):
My two cents:
commitlint.commitlintdefaults should align with default of Conventional Commits.As for whether the type, and first word of the summary, should be capitalized, I have no opinion on one way or another. Can someone do a quick grep over GitHub to find what's commonly used?
@hutson commented on GitHub (Aug 19, 2018):
To move this forward, should we add an item to the FAQ that acknowledges that any casing may be used?
@damianopetrungaro commented on GitHub (Aug 20, 2018):
@hbetts Yup, totally agree with it!
@dijonkitchen do you want to work on it?
@dijonkitchen commented on GitHub (Aug 20, 2018):
Boom! ☝️
@mlindner commented on GitHub (Sep 17, 2019):
This is utterly broken. Please study https://chris.beams.io/posts/git-commit/#capitalize
@annanyearian commented on GitHub (Jan 27, 2023):
Even trying to follow existing git best practices it's not clear to me if the subject line includes the type and scope like some people here suggest. If you treat type and scope as technical constants then the initial capital should be at start of the sentence after the colon.
Having acronyms lowercase looks strange, but so does starting a sentence with lowercase change. The original angular does thankfully have acronyms and proper nouns capitalised. Currently I use 2nd line above, but thinking to change to 3.
@Arcitec commented on GitHub (Aug 16, 2025):
There's only one thing that makes sense to me: Putting the lowercase Conventional Commit tag at the start and then writing a normal best-practices, capitalized commit message after that.
Meaning:
fix(reporting): Change CIFS read failure code to correct READ_ERRlowercase-type(scope): Sentence-cased commit descriptionAnd here's why sentence-case should always be used for the commit message: It avoids the jarring jumps between commits being lowercase everywhere and then suddenly seeing JUMPY capitalization when certain commits begin with a word that REQUIRES it, such as
READ_ERRorValueErroror countless other examples. By ensuring that every commit uses sentence-case, your history looks way more professional.Of course, the Conventional Commit tag can also be capitalized if people prefer it, since the spec allows it. But since it's less important "fluff", lowercasing it (as the original Angular convention did) makes it less distracting, letting the eyes scan quickly to the first capital letter of the
Sentence-cased commit description.Doing it this way is win-win. You get the organization of Conventional Commits, and your eyes can quickly scan past the Conventional Commit tag to find the real commit message (since it's capitalized), and you don't get JUMPY differences between commit messages when certain words must be capitalized.