5 phút đọc

Git Tag

Git Tag

Khi phát hành một phiên bản (release), bạn muốn đánh dấu cố định commit đó là v1.0.0. Đó là việc của git tag.

1. Tag là gì?

Tag là một cái tên cố định gắn vào một commit cụ thể. Khác với nhánh, tag không di chuyển khi có commit mới — nó luôn trỏ tới đúng commit lúc tạo, nên hợp để đánh dấu release.

2. Lightweight vs Annotated

git tag v1.0.0                       # lightweight
git tag -a v1.0.0 -m "Bản 1.0.0"     # annotated
LoạiLưu tác giả/ngày/messageDùng cho
LightweightKhôngĐánh dấu tạm, riêng
AnnotatedRelease chính thức

Annotated tag (-a) là một đối tượng đầy đủ trong Git và được khuyến nghị cho bản phát hành.

3. Push tag

git push thường không tự đẩy tag — phải đẩy riêng:

git push origin v1.0.0     # một tag cụ thể
git push origin --tags     # tất cả tag

Cách nhớ nhanh

Tag = đóng mốc một commit. -a (annotated) cho release; lightweight chỉ là con trỏ. git push không tự đẩy tag — nhớ --tags.