conventionalcommits.org icon indicating copy to clipboard operation
conventionalcommits.org copied to clipboard

add full list of potential values for "type", with descriptions

Open bnb opened this issue 5 years ago • 7 comments

I consistently want to use conventional commits. I generally partially use it rather than fully using it though, using a subset of the types. I can't consistently or easily find all the potential types, so I use the ones I know that are descriptive.

It would be wonderful to get a full list of the types, what they mean, and when they should be used.

bnb avatar Jul 13 '20 18:07 bnb

This is a good one tho. I think this https://github.com/streamich/git-cz#custom-config may be a good starting point.

Do you have any other type you use @bnb ?

damianopetrungaro avatar Jul 16 '20 00:07 damianopetrungaro

So I think the spec is intentionally limited here. It says:

Commits MUST be prefixed with a type, which consists of a noun, feat, fix, etc.,

So the only officially "spec'd" types are feat and fix. All additional ones are etc, and up to you. I am a fan of pulling some of the other useful ones from that list up into the spec, but I think we should be careful of how far we go in this area as many could be controversial and ambiguous in many situations.

wesleytodd avatar Sep 30 '20 15:09 wesleytodd

I don't see why such things should be in the spec at all when we have awesome tooling like commitlint, git-cz, and a ton of other useful and cool helpers. The most important reason they exist is that the spec is so simple.

tunnckoCore avatar Oct 03 '20 05:10 tunnckoCore

for reference, these are the ones I've generally seen:

  • docs
  • ci
  • test
  • build
  • chore

bnb avatar Oct 12 '20 16:10 bnb

I feel the same as @bnb, I too can't consistently or easily find all the potential types from the Quick Summary. I expected it to quickly answer the question "What type prefix should I use for my commit?", which is what I often ask right before right a commit message, and thus an enumeration of the types with descriptions would be helpful.

@wesleytodd wrote:

So the only officially "spec'd" types are feat and fix.

So it appears this Conventional Commit Specification is lighter than I'd prefer, and thus cannot answer my question.

The tension for me is I want this specification to to round out the other types (e.g. docs:, ci:, test:). I want a single place to go to answer this question near the specification. Tools like commitlint are cool, and not a spec however. They too don't answer my question quickly.

majew7 avatar Feb 01 '22 18:02 majew7

@wesleytodd wrote:

So the only officially "spec'd" types are feat and fix. All additional ones are etc, and up to you. I am a fan of pulling some of the other useful ones from that list up into the spec, but I think we should be careful of how far we go in this area as many could be controversial and ambiguous in many situations [emphasis mine]

IMHO it's a good thing that the spec itself isn't too strict on which types are allowed. After all, the spec is a lightweight convention. One of the FAQ answers "recommend using SemVer to release your own extensions to this specification (and encourage you to make these extensions!)".

We followed that approach with some colleagues and agreed on definitions for each of those additional types (here) that make sense for us (and hopefully for somebody else).

javier-godoy avatar Feb 07 '22 14:02 javier-godoy