Explore all courses in this category.
Explore all courses in this category.
Nguyễn Đình Cường
0 comment
09 Nov, 2026
Mở lịch sử Git của một dự án và bắt gặp những commit như "fix", "update", "abc", "final final"? Khi cần tìm xem ai đổi cái gì và vì sao, những commit này gần như vô dụng. Một commit message tốt tốn vài chục giây để viết nhưng tiết kiệm hàng giờ cho cả nhóm về sau.
Quy ước phổ biến gồm ba phần:
Dòng tiêu đề ngắn (khoảng 50-72 ký tự)Phần thân giải thích vì sao thay đổi, không chỉ là cái gì.Có thể nhiều đoạn, mỗi dòng khoảng 72 ký tự.Footer: tham chiếu issue, ví dụ Closes #123Hãy hình dung commit message hoàn thành câu: "Nếu áp dụng, commit này sẽ ...". Do đó dùng "Add", "Fix", "Remove", "Refactor", thay vì "Added", "Fixed" hay "Fixes". Nếu nhóm bạn viết tiếng Việt, hãy chọn một cách và giữ nhất quán, ví dụ "Thêm kiểm tra email ở form đăng ký".
Diff đã cho thấy dòng code nào thay đổi. Điều diff không nói được là lý do. So sánh:
Kém: Fix bugTốt: Fix crash when cart is empty at checkoutCheckout called cart.items[0] without checking length,which threw for new users. Return early with a message.Sáu tháng sau, khi ai đó thắc mắc vì sao có đoạn kiểm tra này, họ có thể dùng git blame hoặc git log và hiểu ngay bối cảnh.
Commit message hay bắt đầu từ commit gọn. Đừng gộp "sửa lỗi đăng nhập", "đổi màu nút" và "nâng cấp thư viện" vào cùng một commit. Lợi ích của commit nhỏ:
git revert mà không kéo theo thay đổi khác.git bisect.Nếu bạn lỡ sửa nhiều thứ cùng lúc, dùng git add -p để chọn từng phần thay đổi cho từng commit.
Nhiều nhóm dùng quy ước Conventional Commits, thêm tiền tố vào tiêu đề:
| Tiền tố | Ý nghĩa |
|---|---|
| feat | Thêm tính năng mới |
| fix | Sửa lỗi |
| docs | Chỉ thay đổi tài liệu |
| refactor | Cải tổ code, không đổi hành vi |
| test | Thêm hoặc sửa test |
| chore | Việc vặt: cấu hình, cập nhật phụ thuộc |
feat(auth): add password reset by emailfix(cart): prevent negative quantitydocs: update setup instructionsƯu điểm là lịch sử dễ đọc lướt và có thể dùng công cụ để tự động sinh changelog. Tuy nhiên đây là quy ước của nhóm, hãy theo những gì dự án hiện tại đang dùng.
Với commit gần nhất chưa push, bạn có thể sửa bằng:
git commit --amendCòn commit đã push lên nhánh dùng chung thì không nên viết lại lịch sử khi chưa trao đổi với đồng đội.
Hãy xem commit message như một tin nhắn gửi cho đồng đội trong tương lai, bao gồm cả chính bạn. Tiêu đề ngắn ở thể mệnh lệnh, phần thân giải thích lý do, mỗi commit chỉ một ý là đủ để lịch sử dự án trở nên đáng đọc.
Bạn mới làm quen với Git và muốn học bài bản cách làm việc nhóm? Hãy xem các khóa học liên quan trên codebem.com.
Nguyễn Đình Cường
0 comment