آموزش git | نسخه بندی (Versioning)
خطای دسترسی
برای ثبت پاسخ، ابتدا باید در سایت وارد شوید.
استفاده از تگها برای نسخهبندی
در دنیای برنامهنویسی، هر بار که یک نسخه جدید از نرمافزار خود را منتشر میکنید (مثلاً نسخه 1.0، 1.1 یا 2.0)، باید بتوانید دقیقاً به آن نقطه از تاریخچه پروژه بازگردید. تگها (Tags) در Git این امکان را فراهم میکنند. تگ مانند یک برچسب ثابت است که به یک commit خاص میچسبد و برخلاف شاخهها (Branches) با commit های بعدی تغییر نمیکند.
چرا از تگ برای نسخهبندی استفاده کنیم؟
تصور کنید پروژه شما 1000 commit دارد. اگر بخواهید نسخه 1.0 را پیدا کنید، باید تاریخچه را جستجو کنید. تگ به شما اجازه میدهد با یک نام ساده مانند v1.0 مستقیماً به آن commit بروید. این کار مخصوصاً برای انتشار نرمافزار (Release) ضروری است.
نحوه ایجاد تگ نسخهبندی:
فرض کنید پروژه شما در وضعیت مناسبی برای انتشار نسخه 1.0 است. ابتدا مطمئن شوید که در شاخه اصلی (مثلاً main یا master) هستید و آخرین commit را انجام دادهاید. سپس دستور زیر را اجرا کنید:
git tag v1.0
این دستور یک تگ با نام v1.0 به آخرین commit شما اضافه میکند. اگر میخواهید تگ را به یک commit قدیمیتر اضافه کنید، میتوانید هش (Hash) آن commit را مشخص کنید:
git tag v0.9 a1b2c3d4
در اینجا a1b2c3d4 قسمتی از هش commit مورد نظر است.
مشاهده تگها:
برای دیدن لیست تمام تگهایی که ایجاد کردهاید، دستور زیر را اجرا کنید:
git tag
خروجی چیزی شبیه به این خواهد بود:
v0.9
v1.0
ارسال تگ به مخزن ابری:
توجه کنید که تگها به صورت خودکار به مخزن ابری (مثل GitHub) ارسال نمیشوند. برای این کار باید از دستور git push به همراه گزینه --tags استفاده کنید:
git push origin --tags
با این کار تمام تگهای محلی شما به مخزن ابری فرستاده میشوند. از این به بعد، همتیمیهای شما نیز میتوانند با دستور git fetch تگهای جدید را دریافت کنند.
نکته مهم:
- تگها معمولاً از الگوی
vX.Y.Zپیروی میکنند (مثلv2.1.3). این الگو به تفکیک نسخههای اصلی (Major)، فرعی (Minor) و رفع اشکال (Patch) کمک میکند. - برخلاف شاخهها، نمیتوانید روی یک تگ commit جدید انجام دهید. تگ فقط یک اشارهگر ثابت است.
با استفاده از تگها، شما یک تاریخچه شفاف از انتشار نسخههای نرمافزار خود خواهید داشت و همیشه میتوانید به سرعت به هر نسخه خاصی برگردید.
برای ثبت پرسش ابتدا در سایت وارد شوید.