Conventional Commits

約定式提交

如何定義版本

Semantic Versioning 
(SemVer)

語意化版本

WHY

Conventional Commits?

  • 自動化生成 CHANGELOG。
  • 基於提交的類型,自動決定語義化的版本變更。
  • 向同事、公眾與其他利益關系者傳達變化的性質。
    觸發構建和部署流程。
  • 讓人們探索一個更加結構化的提交歷史,以便降低對你的項目做出貢獻的難度。

what is
Conventional Commits

<type>[optional scope]: <description>

 

[optional body]

 

[optional footer]

format:

feat: new Search bar

 

fix(header): make logo clickable

 

fix(header): make logo clickable

 

revise logo link to home page

 

Close issue #32

example:

type key:

(可以共同約定)

Commit Type Title Description
feat Features A new feature
fix Bug Fixes A bug Fix
BREAKING CHANGE BREAKING CHANGE:
docs Documentation Documentation only changes
style Styles Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
refactor Code Refactoring A code change that neither fixes a bug nor adds a feature
perf Performance Improvements A code change that improves performance
test Tests Adding missing tests or correcting existing tests
build Builds Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm)
ci Continuous Integrations Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)
chore Chores Other changes that don't modify src or test files
revert Reverts Reverts a previous commit

配合自動化程式及gitlab API 即可,自動生成版本文件

或自動產生CHANGELOG

參考網址

Made with Slides.com