ברוכים הבאים לקרב הגורלי בין תגי Git ותגי AWS, שני מתמודדים שאין להם כלום במשותף אלא אהבתם למילה "tag". בואו נשים אותם פנים מול פנים ונראה מי מנצח בקרב הבלבול והשימושיות!
סיבוב 1: מי הם
גיט תגים
ההיסטוריונים של עולם התוכנה. הם לא מתעניינים בהווה; הם פשוט אוהבים לסמן אירועים חיוניים (כמו הוצאות לאור) כדי שתוכלו לטייל בזמן. תחשבו עליהם כעל מכונת זמן לשליטת גרסאות — בלעדי סיכון להתמודד עם הטעויות התכנותיות שלך מהעבר… אוי, אולי כדאי לך לאכזב את האשמות בגרסה 1.0.0-סופית-סופית-בוודאי-פעם-הזו!
תגי AWS
מנהל המשרד המאורגן למדי שרוצה תוויות על כל דבר, כולל קיצורי EC2 שלך, דליי S3, ואפילו את פונקציית הלמבדה השכוחה שעולה לך 500 דולר לחודש. תגי AWS דומים לזה החבר שמסדר את כל החיים שלו עם קודי צבעים… חוץ מכאשר הוא שוכח, ועכשיו אף אחד לא יודע מה מהו כלום.
סיבוב 2: מה הם עושים
תגי Git
- עוזרים לך לסמן התחייבויות חשובות (לדוגמה, v1.0.0, הוצאה לאור לייצור)
- משמשים לגרסאות של תוכנה
- יכולים להיות קלים (רק תווית) או מודגשים (תווית עם שיעור היסטוריה)
- פעם שמונים, הם כמו ציוץ מביך — קשה למחוק! (תידכך את זה.)
תגי AWS
- עזרה לך להוסיף זוגות מפתח-ערך לAWS resources (סביבה: Production, בעלים: רם)
- משמש למעקב על עלויות, ארגון והתאמה לתקנים
- יכול להיות חובה (אם בעל המנהל שלך אומר כך) או אופציונלי (אם אתה מרגיש עצלן)
- קל לשנות, להבדיל מחשבונית AWS החודשית שלך (שהיא יותר לא צפויה ממהפך בסרט לומדי הכסף)
סיבוב 3: תגובות ממשיות
משתמש Git Tag
"רק סימנתי גרסה! אוי, המתייחס לשם. אוי לא… אוי לא… אוי לא." (ספוילר: לשנות שם תג הינו קשה יותר מלשנות את שם החי שלך אחרי שלוש שנים.)
משתמש AWS Tag
"מי סימן תג זה למקרה EC2 עם 'מחק אותי'?! רגע… לאיפה הלך ה-EC2 שלי?!" (הסרט האימהי האמיתי: חיובי AWS ומחיקות בשגיאה.)
סיבוב 4: מה קורה אם אתה מתעלם מהם?
התעלמות מתגי Git
- הגרסאות שלך הופכות להיות תעלומה. האם v1.2 הייתה לפני או אחרי fix-bug-final-final2?
- איתור שגיאות בסביבה היוצרת פרדוקס של נסיעה בזמן.
- צוות הפיתוח/הנדבקות שלך מעריך את בחירות החיים שלהם ומתייעץ על העברתם לאזור ללא גישה לאינטרנט.
התעלמות מתגי AWS
- צוות ה-FinOps שלך בוכה כאשר הוא רואה את חשבונית ה-AWS (וכן גם אתה).
- אף אחד לא יודע אילו מופעים הם סביבות בדיקה ואילו הן Production.
- אתה מפסיק בטעות את הדשבורד המועדף עליו של ה-CIO. אופס!!! (זמן לעדכן את קורות החיים שלך!)
סיבוב 5: איך לתייג גם
תגי גיט
- השתמש ב
git tag v1.0.0
כדי ליצור תווית קלה. - השתמש ב
git tag -a v1.0.0 -m "שחרור גרסה 1.0"
כדי ליצור תווית מ annotated. - דחוף את זה עם
git push origin v1.0.0
. - האם תייגת בטעות את המחויבות הלא נכונה? מזל טוב, אתה צפוי להרפתקה!
- השתמש ב
git tag -d v1.0.0
(אם מקומי) ו git push --delete origin v1.0.0
(אם מרוחק) כדי לבטל את הכאוס.
- השתמש ב
- האם אתה מתוסכל מהסרת תגים מ-1000000 מאגרים ואז להשתמש באוטומציה שלך (סקריפט פשוט ב-Jenkins יכול לעזור לך לחסוך הרבה זמן ורוגע נפשי)
תגי AWS
- השתמש ב
AWS CLI: aws ec2 create-tags --resources i-1234567890abcdef0 --tags Key=Environment,Value=Production
. - במסוף AWS, עבור לכל משאב (כמו EC2 או S3) והוסף ידנית זוגות מפתח-ערך תחת הכרטיסייה "תגים".
- אוטומט מדיניות תיוג באמצעות ארגוני AWS ואכוף אותן כמו שליט תיוג.
- האם שכחת לתייג את המשאבים שלך? החשבון שלך ב-AWS יזכיר לך. בכאב.
סיבוב 6: טכניקות תיוג מתקדמות
תיוג גיט מתקדם
- רשום את כל התגים:
git tag -l
- Tag ספציפי ל-commit:
git tag -a v2.0.0 <commit-hash> -m "גרסה 2.0 יציאה"
- אימות תג חתום:
git tag -v v1.0.0
- העברת תג ל-commit שונה:
git tag -f v1.0.0 <new-commit-hash>
- שיתוף כל התגיות עם השרת:
git push --tags
תיוג AWS מתקדם
- רשימת כל התגיות עבור משאב:
aws resourcegroupstaggingapi get-resources --tag-filters Key=Environment,Values=Production
- תיוג של מספר משאבים בו זמנית:
aws ec2 create-tags --resources i-1234567890abcdef0 i-0987654321abcdef0 --tags Key=Project,Value=MyApp
- הסרת תג:
aws ec2 delete-tags --resources i-1234567890abcdef0 --tags Key=Environment
- שימוש בעורך תגיות AWS לתיוג באופן מסודר בממשק ה- AWS Console.
- יישום פונקציות AWS Lambda ליישום תוויות בשיתוף עבור כל המשאבים.
סיבוב 7: משבר התיוג האקזיסטנציאלי
- בכל שלב, כל מהנדס שואל: האם תגים חשובים? התשובה היא כן – עד שלא. יום אחד, תחפש בהיסטוריית Git שנים ותתפלא למה מישהו תייג קומיט כ-
final-final-v2-fix-thatworks-for-sure-this-time
. או שתגלה מופע EC2 שתוייג כ-Production
, רק כדי להבין שאף אחד לא זוכר מה זה עושה. - תיוג הוא כמו תיוג מזון במקרר המשרד – חיוני לארגון, אך נוטה להתעלמות מוחלטת. זה הכל כיף ומשחקים עד שאתה מחפש פריסה ישנה או מנסה להצדיק חשבון AWS יקר.
- אז, קבל את התיוג בזהירות. תווית נוספת היום עשויה לחסוך לך משבר מוחלט מחר. או לפחות לנהל שיחה מאוד לא נוחה עם המנהל שלך.
הכרעת הדין
אז, מי מנצח? ובכן, זה עם שום דבר במשותף חוץ מאהבה למילה "tag," כפי שכבר הוזכר.
- אם אתה אוהב דיוק היסטורי ושחרורים מתועדים היטב של קוד, תגי Git הם החבר הכי טוב שלך.
- אם אתה אוהב לעקוב איפה הכסף שלך הולך (או לפחות להעמיד פנים שאתה עושה), תגי AWS הם חיוניים.
כך או כך, תגיות הן גיבורי הטכנולוגיה הלא מוערכים – עד שהן לא. אז, בפעם הבאה שאתה מתייג משהו, זכור מהלך אחד לא נכון, והעתיד יהיה מאוד מבולבל.
תיוג מהנה!
Source:
https://dzone.com/articles/git-tags-vs-aws-tags-a-tag-tastic-showdown