etclabscore / pristine

Pristine is an open source repository in its original condition.
Apache License 2.0
11 stars 9 forks source link

Conventional commits #28

Open meowsbits opened 5 years ago

meowsbits commented 5 years ago

Is your feature request related to a problem? Please describe.

Currently conventional commits refers and adheres to http://conventionalcommits.org/.

My issue is that this "Conventional commits" style isn't really conventional; it's actually pretty opinionated.

Since the Conventional Commits spec allows arbitrary xxx[yyy]:, it seems like the only thing that structuring a message in this way does is enable easier machine readability1 (and not work directly to Documentation Driven Development in the sense of legible and accurate documentation around development). It's just a punctuation spec, not a content spec, and despite it's name is not very generalized.

Describe the solution you'd like

Something as generic as possible, while still being able to describe something that's actually useful.

In my opinion there are more useful resources we can draw from for outlining a rubric for a "good" commit message, for example

Describe alternatives you've considered

Resources

I spent 10 minutes looking through "top starred" repos on Github for examples (for lack of a better "canon of the conventional").

A list of example repos that don't follow this pattern:

Repos I found that do use it:


  1. From the docs, 3/5 of "Why Use Conventional Commits" are for computer automation.
BelfordZ commented 5 years ago

While you make some very good points, for me, its a hard sell to change to anything else for 1 reason: tooling.

Conventional commit style ATM has the best tooling from what I could see. Basically we need out of the box validation of messages in CI, and ideally changelog generators, etc etc.