شرح Git Tag: كيفية سرد العلامات وإنشاؤها وإزالتها وإظهارها في Git

يتيح وضع العلامات للمطورين وضع علامة على نقاط التفتيش المهمة أثناء تطوير مشاريعهم. على سبيل المثال ، يمكن تمييز إصدارات إصدارات البرامج. (على سبيل المثال: الإصدار 1.3.2) يسمح لك بشكل أساسي بإعطاء الالتزام اسمًا خاصًا (علامة).

لعرض جميع العلامات التي تم إنشاؤها بترتيب أبجدي:

git tag

للحصول على مزيد من المعلومات حول العلامة:

git show v1.4

هناك نوعان من العلامات:

مشروح

git tag -a v1.2 -m "my version 1.4"

وزن خفيف

git tag v1.2

تختلف في طريقة تخزينها.

هذه إنشاء علامات على الالتزام الحالي الخاص بك.

إذا كنت ترغب في وضع علامة على التزام سابق ، فحدد معرف الالتزام الذي تريد وضع علامة عليه:

git tag -a v1.2 9fceb02

يمكن استخدام أسماء العلامات بدلاً من الالتزام بالمعرفات أثناء التحقق ودفع الالتزامات إلى الريبو البعيد.

معلومات اكثر:

  • وثائق Git: التوثيق
  • باب وضع العلامات على الفصل: كتاب

يمكنك سرد جميع العلامات المتاحة في المشروع باستخدام git tagالأمر (nate أنها ستظهر بترتيب أبجدي):

$ git tag v1.0 v2.0 v3.0

تعد طريقة سرد العلامات هذه رائعة للمشاريع الصغيرة ، ولكن يمكن أن تحتوي المشاريع الكبيرة على مئات العلامات ، لذلك قد تحتاج إلى تصفيتها عند البحث عن نقطة مهمة في السجل. يمكنك العثور على علامات تحتوي على أحرف محددة إضافة -lإلى git tagالأوامر:

$ git tag -l "v2.0*" v2.0.1 v2.0.2 v2.0.3 v2.0.4

قم بإنشاء علامة

يمكنك إنشاء نوعين من العلامات: ذات تعليقات توضيحية وخفيفة الوزن. أولها كائنات منافسة في قاعدة بيانات GIT: يتم جمعها تدقيقًا ، وإعادة عرض رسالة (مثل الالتزامات) وتخزين البيانات المهمة الأخرى مثل الاسم والبريد الإلكتروني والتاريخ. من ناحية أخرى ، لا تتطلب العلامات خفيفة الوزن رسالة أو تخزين بيانات أخرى ، حيث تعمل كمؤشر إلى نقطة معينة في المشروع.

قم بإنشاء علامة مشروحة

لإنشاء علامة توضيحية ، أضف -a tagname -m "tag message"إلى git tagالأمر:

$ git tag -a v4.0 -m "release version 4.0" $ git tag v1.0 v2.0 v3.0 v4.0

كما ترى ، فإن -aالمحددات التي تقوم بإنشاء علامة مشروحة ، بعد أن يأتي اسم العلامة وأخيراً ، -mتليها رسالة العلامة للتخزين في قاعدة بيانات Git.

قم بإنشاء علامة خفيفة الوزن

تحتوي العلامات خفيفة الوزن فقط على المجموع الاختباري للالتزام (لا يتم تخزين أي معلومات أخرى). لإنشاء واحدة ، ما git tagعليك سوى تشغيل الأمر بدون أي خيارات أخرى (تُستخدم الأحرف -lw في نهاية الاسم للإشارة إلى علامات خفيفة الوزن ، ولكن يمكنك تمييزها كما تريد):

$ git tag v4.1-lw $ git tag v1.0 v2.0 v3.0 v4.0 v4.1-lw

هذه المرة لم تحدد رسالة أو بيانات أخرى ذات صلة ، لذا فإن العلامة تحتوي فقط على المجموع الاختباري للالتزام المشار إليه.

عرض بيانات العلامة

يمكنك تشغيل git showالأمر لعرض البيانات المخزنة في علامة. في حالة العلامات ذات التعليقات التوضيحية ، سترى بيانات العلامة وبيانات التنفيذ:

$ git show v4.0 tag v4.0 Tagger: John Cash  Date: Mon Sat 28 15:00:25 2017 -0700 release version 4.0 commit da43a5fss745av88d47839247990022a98419093 Author: John Cash  Date: Fri Feb 20 20:30:05 2015 -0700 finished details

إذا كانت العلامة التي تشاهدها علامة خفيفة الوزن ، فسترى فقط بيانات التنفيذ المشار إليها:

$ git show v1.4-lw commit da43a5f7389adcb9201ab0a289c389ed022a910b Author: John Cash  Date: Fri Feb 20 20:30:05 2015 -0700 finished details

وضع علامات على الالتزامات القديمة

يمكنك أيضًا وضع علامة على الالتزامات السابقة باستخدام علامة git الالتزام. للقيام بذلك ، ستحتاج إلى تحديد المجموع الاختباري للالتزام (أو على الأقل جزء منه) في سطر الأوامر.

أولاً ، قم بتشغيل سجل git لمعرفة المجموع الاختباري للالتزام المطلوب:

$ git log --pretty=oneline ac2998acf289102dba00823821bee04276aad9ca added products section d09034bdea0097726fd8383c0393faa0072829a7 refactorization a029ac120245ab012bed1ca771349eb9cca01c0b modified styles da43a5f7389adcb9201ab0a289c389ed022a910b finished details 0adb03ca013901c1e02174924486a08cea9293a2 small fix in search textarea styles

عندما يكون لديك المجموع الاختباري المطلوب ، أضفه في نهاية سطر إنشاء العلامة:

$ git tag -a v3.5 a029ac

ستلاحظ أنه تمت إضافة العلامة بشكل صحيح وهي تعمل git tag:

$ git tag v1.0 v2.0 v3.0 v3.5 v4.0 v4.1-lw

دفع العلامات

لا يقوم Git بدفع العلامات افتراضيًا عند تشغيل الأمر git push. لذلك ، لدفع علامة بنجاح إلى خادم ، يجب عليك git push originالأمر:

$ git push origin v4.0 Counting objects: 14, done. Delta compression using up to 8 threads. Compressing objects: 100% (16/16), done. Writing objects: 100% (18/18), 3.15 KiB | 0 bytes/s, done. Total 18 (delta 4), reused 0 (delta 0) To [email protected]:jcash/gitmanual.git * [new tag] v4.0 -> v4.0

يمكنك أيضًا استخدام --tagsخيار إضافة علامات متعددة مرة واحدة باستخدام git push originالأمر:

$ git push origin --tags Counting objects: 1, done. Writing objects: 100% (1/1), 160 bytes | 0 bytes/s, done. Total 1 (delta 0), reused 0 (delta 0) To [email protected]:jcash/gitmanual.git * [new tag] v4.0 -> v4.0 * [new tag] v4.1-lw -> v4.1-lw

التحقق من العلامات

يمكنك استخدام git checkoutالدفع إلى علامة كما تفعل عادةً. لكن عليك أن تضع في اعتبارك أن هذا قد ينتج عنه حالة رأس منفصلة .

$ git checkout v0.0.3 Note: checking out 'v0.0.3'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by performing another checkout.

حذف علامة

قد تجد موقفًا إذا كنت تريد حذف علامة معينة. هناك أمر مفيد للغاية لهذه المواقف:

$ git tag --delete v0.0.2 $ git tag v0.0.1 v0.0.3 v0.0.4

معلومات اكثر

  • Git Pro - أساسيات وضع العلامات
  • Git Pro - التوثيق
  • Git HowTo
  • نصيحة Git: العلامات
  • إنشاء علامة

المصادر

وثائق Git: العلامات