Commit Message

Commit Message Header chuẩn

Bài viết này chúng ta chỉ quan tâm và nói về Commit Message Header

Commit Message Header theo chuẩn

Theo chuẩn, 1 Commit Message Header sẽ theo cấu trúc như sau:

type(scope?): subject . refs? 

type

  • build: Changes that affect the build system or external dependencies ( ex scopes: gulp, broccoli, npm)

  • ci: Những cập nhật cấu hình ci-cd / Changes to our CI configuration files and scripts (ex scopes: Gitlab CI, Circle)

  • chore: Những sửa đổi nhỏ nhặt không liên quan tới code / add something without touching production code (Eg: update npm dependencies)

  • docs: Thêm hoặc thay đổi document / Documentation only changes

  • feat: Thêm một feature / A new feature

  • fix: Fix bug / A bug fix

  • perf: Code cải tiến về mặt hiệu năng xử lý / A code change that improves performance

  • refactor: Sửa code nhưng không fix bug cũng không thêm feature hoặc đôi khi bug cũng được fix từ việc refactor / A code change that neither fixes a bug nor adds a feature

  • revert: Reverts a previous commit

  • style: Những thay đổi không làm thay đổi ý nghĩa của code như thay đổi css/ui chẳng hạn. / Changes that do not affect the meaning of the code (Eg: adding white-space, formatting, missing semi-colons, etc)

  • test: Adding missing tests or correcting existing tests

  • vendor: Cập nhật version cho các dependencies, packages / update npm package version

scope

  • Optional, và nếu có thì nó nên là tên của package mà commit hiện tại làm ảnh hưởng.

  • Scope thường dùng ở các repository mà chứa nhiều packages dạng monorepo.

ví dụ repo của Vue 3, scope sẽ là tên của 1 package nào đó ở folder packages

subject

  • Là nội dung của commit

  • Sử dụng trường tóm tắt để cung cấp mô tả ngắn gọn về thay đổi

  • Sử dụng mệnh lệnh, thì hiện tại: "change" không phải "changed" cũng như "changes"

  • Không viết hoa chữ cái đầu tiên

  • Không có dấu chấm (.) ở cuối

refs

  • Optional , là task/issue liên quan trên gitlab/github

  • Phần này là cá nhân mình tự thêm vào cho phù hợp với thói quen mention các commit vào những task, issue liên quan được define tại gitlab/github, thêm đoạn này giúp mình tiện theo dõi lịch sử của task/issue

Ví dụ

fix: fix file uploading photo . refs #issue-69 feat: add upload photo function . refs #issue-69 #issue-70 ci: update ci build n deploy feature to sku using tag or merge requestn. ref #issue-69

Xem chi tiết hơn tại #Commit Message Guidelines

Last updated