שבוע 10 - יום 3- פונקציית branch- הסבר נוסף

תגיות:

היי,
בהוראות נרשם:
בעת הרצת פקודת checkout , יעודכן בקובץ בשם activated.txt שנמצא ישירות תחת התיקייה .wit , שמו של ה־branch שנמצא במצב “פעיל” בעת ביצוע הפקודה. זה יהיה כל תוכנו של הקובץ, ולכן אפשר להרגיש בנוח לדרוס אותו.

אשמח לקבל הסבר נוסף כיצד אני יודעת מהו הענף שנמצא במצב פעיל בעת ביצוע הפקודה.

תודה!

2 לייקים

אם עשית checkout לענף מסוים, זה הענף שהופך להיות פעיל.
אם עשית checkout ל־commit id, אין ענף פעיל.
אם מעולם עדיין אף אחד לא עשה checkout, ה־master הוא הענף הדיפולטי ולכן הוא הפעיל.

תודה,
שאלה נוספת, שמו של הענף הפעיל הוא השם שהוכנס במקום NAME כאשר נכתוב :
python path/to/wit.py branch NAME
האם יש הגבלות לשם שנותנים לענף? הוא גם יכול להכיל אותיות ומספרים? הכוונה כיצד מבדילים האם מה שהוכנס אחרי checkout הינו commit id או branch ?

את קודם מחפשת branch name עם השם הזה, ואם הוא לא קיים זה commit id.

תודה, אני עדיין קצת מבולבלת,
את החיפוש האם קיים branch name כזה, הכוונה שיש לעבור על הקובץ references.txt ולבדוק האם קיים שם כזה באחת משורות הקובץ?

למה מבולבלת? נשמע שאת על זה :slightly_smiling_face:

תודה רבה, עשית לי המון סדר בדברים!

לייק 1

זה אומר שהקובץ activated יכול להיות ריק?
אפשר לעשות commit כשאין ענף פעיל?

בהחלט

כן, פשוט אף ענף לא מתקדם איתך :slight_smile:

לייק 1

במקרה כזה, master לא חוזר להיות זה שפעיל?
ובהקשר של זה, אם נעשה checkout master, בזמן שאחד הבראנצ’ים פעיל, האם master חוזרת להיות פעילה.
ובהקשר של זה… האם אחד הבראצ’ים הפעילים יכול לעשות checkout master?
ושאלה אחרונה:

  1. פקודת ה־ checkout כעת צריכה להיות מסוגלת לקבל אחת משתי האפשרויות: או commit id, או שם של branch.
    הפקודה צ’קאאוט עדיין צריכה להיות מסוגלת גם לקבל master, לא?

חשוב להבין ש־master הוא branch לכל דבר, לכן:

לא. כאמור, יכול להיות שאף branch לא פעיל (זה כתוב ממש מעליך)

כן

אני לא בטוח שאני מבין כ"כ את השאלה. מה זה אומר branch “עושה”?

כאמור, master הוא branch לכל דבר, ולכן התשובה לזה היא כן :slight_smile:

תודה על התשובות :slight_smile:
ושאלה נוספת. בעת הפעלת commit של אחד מה מהבראנצ’ים, האם הוא שולח כפרמטר את שם הבראנצ’ שלו?
עשוי להיות מצב, בו ‘איתן’ רשום כ’פעיל’ ב activated, אבל דווקא ‘משה’ הוא זה שמפעיל commit. ואם הפונקציה אינה מקבלת כפרמטר את שם הבראנצ’, אין איך לאמת שאותו צריך לקדם. או שבכל מקרה שמופעלת הפקודה commit מעתה והלאה, הפעולה מתבצעת עבור הבראנצ’ הפעיל?

2 פוסטים פוצלו לנושא חדש: מה מתעדכן ב־references בפעולת checkout?

אין קשר בין ה־commit לבין ה־branch.
ה־commit הוא פשוט ישות נפרדת לחלוטין מ־branch.

כשאתה עושה commit, אתה פשוט מוסיף עוד תמונה שממנה יש חץ (הפנייה) לתמונה הקודמת.
ה־branch הוא סך הכל תווית שמצביעה על commit מסוים. ה־branch לא “מפעיל” commit, כי ה־branch הוא סך הכל תווית שמצביעה ל־commit, לא ישות שעומדת בפני עצמה.

3 פוסטים פוצלו לנושא חדש: על הפעולות commit ו־checkout

2 פוסטים פוצלו לנושא חדש: הפרמטרים ל־git checkout – שם branch ו־commit id

האם אפשר להוסיף מילון ברנצ’ים לקובץ במקום להוסיף שורות כמספר הברנצ’ים?

branches={...Name:commit_id}

אני מאמין שזה יותר בטוח וקל לתחזוק כי יכול להיות רק ברנצ’ אחד מאותו שם…

כרגע עדיף שלא, בסיום התרגיל תשפר איך שנראה לך :stuck_out_tongue:

2 פוסטים פוצלו לנושא חדש: מי הופך להיות פעיל ב־checkout ל־commit id?

2 פוסטים פוצלו לנושא חדש: האם יכולים להיות שני branc־ים עם אותו שם?