Screenshot at Mar 22 17 16 33 1

Viết commit đẳng cấp thế giới

Tình cờ gặp bài viết chia sẽ khá hay về cách viết commit trước khi push code nơi copy chia sẽ vậy, nếu bạn nào đã làm việc với GIT rồi thì thấy việc viết thông báo trước khi commit cũng không phải là đơn giản đâu. Bài viết nguyên gốc bạn xem trên team AsianTechInc

Nguyên tắc

Format như sau :
dòng 1: thông tin cơ bản về nội dung thay đổi ( title, tóm tắt, … )
dòng 2: khoảng trắng
dòng 3 trở đi: Lý do thay đổi, nội dung thay đổi cụ thể, …

Tiếng Anh, tiếng Nhật đều được, nhưng 1 project thì dùng thống nhất 1 ngôn ngữ thôi. Và không dùng tiếng Việt nhé =))

Dòng 1

Format như sau :

[phân loại] tóm tắt

Phân loại

Có nhiều loại thao tác đối với code, và tương ứng với nó sẽ là 1 phân loại cụ thể. Vấn đề là có … hơi nhiều phân loại :D.

Phân loại thông thường

  • fix : sửa bugs
  • hotfix : sửa những bugs khẩn cấp
  • add : thêm file, thêm chức năng
  • modify : sửa, thay đổi tính năng ( không phải bug nhé )
  • change : thay đổi requirement
  • clean : chỉnh sửa, dọn dẹp code
  • disable : vô hiệu hoá ( ví dụ như comment out )
  • remove : xoá file
  • upgrade : nâng cấp
  • revert : chữa cháy lại những thứ vừa thay đổi

Phiên bản đơn giản

Số lượng phân loại trên thực sự là quá nhiều và phức tạp, do đó để đơn giản hoá vấn đề, ta sẽ đưa ra 1 cách phân loại khác nhẹ nhàng hơn.

  • fix : fix bugs
  • add : thêm chức năng, tính năng mới
  • modify : sửa, nâng cấp tính năng ( không phải bugs )
  • remove : xoá ( file )
  • revert : chữa cháy

Tóm tắt

[động từ] [danh từ] [trợ từ/phó từ] [#{issue ID}]
Tóm tắt nội dung của những thay đổi trong commit 1 cách ngắn gọn. Theo 1 số quy ước khác thì dòng này sẽ không quá 80 kí tự. Ngoài ra cũng nên hạn chế sử dụng từ chuyên môn.

Nếu project sử dụng issue của github thì cuối dòng phải thêm #{issue ID} để tận dụng 1 số tiện ích của github.

Dòng 3

Giải thích nội dung, lý do, những thay đổi trong commit.
Cố gắng giải thích đơn giản và dễ hiểu. Nếu dùng redmine thì có thể … paste cả cái link redmine vào đây cho dễ hiểu :D.

Tiếng Anh trong commit

Xác định động từ chính trong 1 commit sẽ dễ hiểu và dễ viết hơn

Động từ

Động từ để ở thì hiện tại.

ý nghĩatừ
tạo mớicreate
xoáremove, delete
cập nhậtupdate
cập nhật(version)upgrade
thêmadd
sử dụnguse
bao gồminclude
sửamodify
sửa (bugs)fix (a bug)
thay đổichange
di chuyểnmove
ghi đèreplace
mở rộngextend
sử dụng/không sử dụngenable/disable
chỉnh lýclean
liên kếtlink
gửisend
mở/đóngopen/close

Những từ trừu tượng như implement, improve, support thì không nên dùng.

Danh từ

Danh từ ngoài đời thì nhiều chứ trong code thì cũng không nhiều :D.
Những từ thường hay gặp :
bug, typo, changelog, config, settings, format, description, argument

bổ ngữ, other

Những bổ ngữ hay dùng :

ý nghĩatừ
vì …, trong …for …
cùng với…with …
vượt qua…over …
trong…in …
thông qua…via …
từ … đến …from … to …
thay thế cho…instead of …
nếu cầnif necessary
…trước/saubefore …/after …

Kết luận

Tôi huy vọng với chia sẽ này thì message mỗi lần commit của bạn sẽ trở nên tốt hơn, nếu bạn nào có những mánh khoé hay thì chia sẽ với bạn đọc nào

Leave a Comment

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Scroll to Top