-
-
Notifications
You must be signed in to change notification settings - Fork 188
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Conventional Commit tooling #1503
Comments
We use a GitHub app called Semantic Merge I think that ensures PR titles
are consistent with CC and then can auto merge them. This would be great!
…On Fri, Apr 24, 2020, 4:31 PM jedeen ***@***.***> wrote:
Context
Currently, we have guidelines for how to format commit message in general,
but do not have enforced standards for how to add commit metadata (is this
a breaking change, is this a bugfix, other changes adjacent to semantic
versioning concerns, etc.) We stopgap some of that with Github labels, but
those do not exist in the Git commit history.
Proposal
- enforce the Conventional Commit format for all commits that are
merged to the main branch
- this will allow us to automatically determine the appropriate
semantic version for post-1.0 releases of Excalibur
- add linting command for developers to use locally (if they wish)
- this prevents having to require that community contributors
follow the strict commit message format, since we squash and rebase all
pull requests
- automate changelog updates on pull request merge
- if commit messages are required to be well-formatted and provide
proper context, then the vast majority of the changelog can be automated
- maintain the majority of our git commit message format conventions,
as described in our Contributing document
Commit Format Examples
General template:
<type>[optional scope]: <Description>
[optional body]
closes #issue_number
Specific example:
fix: Prevent sounds from playing when the game is stopped
Ensure all sounds stop when the game is stopped, and Sound.play() does not play sounds when the game is stopped
closes #1476
additional info: https://www.conventionalcommits.org
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#1503>, or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAEJU22QH6SOMR2QX4UVL7TROIAJ5ANCNFSM4MQNUB2Q>
.
|
… On Fri, Apr 24, 2020, 7:31 PM Kamran Ayub ***@***.***> wrote:
We use a GitHub app called Semantic Merge I think that ensures PR titles
are consistent with CC and then can auto merge them. This would be great!
On Fri, Apr 24, 2020, 4:31 PM jedeen ***@***.***> wrote:
> Context
>
> Currently, we have guidelines for how to format commit message in
> general, but do not have enforced standards for how to add commit metadata
> (is this a breaking change, is this a bugfix, other changes adjacent to
> semantic versioning concerns, etc.) We stopgap some of that with Github
> labels, but those do not exist in the Git commit history.
> Proposal
>
> - enforce the Conventional Commit format for all commits that are
> merged to the main branch
> - this will allow us to automatically determine the appropriate
> semantic version for post-1.0 releases of Excalibur
> - add linting command for developers to use locally (if they wish)
> - this prevents having to require that community contributors
> follow the strict commit message format, since we squash and rebase all
> pull requests
> - automate changelog updates on pull request merge
> - if commit messages are required to be well-formatted and provide
> proper context, then the vast majority of the changelog can be automated
> - maintain the majority of our git commit message format conventions,
> as described in our Contributing document
>
> Commit Format Examples
>
> General template:
>
> <type>[optional scope]: <Description>
>
> [optional body]
>
> closes #issue_number
>
> Specific example:
>
> fix: Prevent sounds from playing when the game is stopped
>
> Ensure all sounds stop when the game is stopped, and Sound.play() does not play sounds when the game is stopped
>
> closes #1476
>
> additional info: https://www.conventionalcommits.org
>
> —
> You are receiving this because you are subscribed to this thread.
> Reply to this email directly, view it on GitHub
> <#1503>, or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AAEJU22QH6SOMR2QX4UVL7TROIAJ5ANCNFSM4MQNUB2Q>
> .
>
|
This issue hasn't had any recent activity lately and is being marked as stale automatically. |
Perhaps worth mentioning an alternative for those who don't want the chore of enforcing and abiding by conventional commit standards. Beachball JS was developed and is used extensively throughout Microsoft. It's an alternative to Conventional Commits that solves the same problems in a more streamlined way without relying on commit messages. Only mentioning it because our projects recently shifted over, and we found it reduced a lot of friction and need for compliance verification. I think this ticks all the checkboxes described in the issue. https://microsoft.github.io/beachball/
|
This issue hasn't had any recent activity lately and is being marked as stale automatically. |
Context
Currently, we have guidelines for how to format commit message in general, but do not have enforced standards for how to add commit metadata (is this a breaking change, is this a bugfix, other changes adjacent to semantic versioning concerns, etc.) We stopgap some of that with Github labels, but those do not exist in the Git commit history.
Proposal
Commit Format Examples
General template:
Specific example:
additional info: https://www.conventionalcommits.org
See also #777
The text was updated successfully, but these errors were encountered: