مشخص کردن یک نقطهی مهم در تاریخچه
وقتی به یک نقطهی خاص از پروژه میرسید، مثلاً انتشار نسخهی ۱.۰، میخواهید بتوانید بعداً بهراحتی به آن اشاره کنید بدون نیاز به بهخاطر سپردن شناسهی commit. برای این کار از tag استفاده میکنیم:
git tag -a v1.0.0 -m "اولین نسخهی پایدار"
git push origin v1.0.0
رایجترین قرارداد نامگذاری، نسخهبندی معنایی یا Semantic Versioning است با فرمت MAJOR.MINOR.PATCH؛ مثلاً در نسخهی 2.3.1: عدد ۲ یعنی تغییرات بزرگ و ناسازگار، ۳ یعنی افزودن قابلیت جدید سازگار با قبل، و ۱ یعنی رفع باگ.
در گیتهاب، معمولاً بر اساس همین tagها یک Release رسمی ساخته میشود که میتواند شامل یادداشت انتشار (Release Notes) و فایلهای باینری قابل دانلود باشد. برای دیدن همهی تگها از git tag و برای رفتن به وضعیت پروژه در یک تگ خاص از git checkout v1.0.0 استفاده میشود.
tagها برخلاف branch حرکت نمیکنند؛ یعنی همیشه به همان commit خاص اشاره میکنند، حتی اگر تاریخچهی شاخهی اصلی جلوتر برود. همین ویژگی آنها را برای نشانهگذاری نسخههای منتشرشده ایدهآل میکند.