Git Rename Branch: שינוי שם של ענף
עודכן לאחרונה
משנים שם של ענף עם git branch -m (ה--m הוא קיצור של "move"). עם ארגומנט אחד הפקודה משנה את שם הענף שבו אתם נמצאים; עם שניים היא משנה שם של כל ענף לפי שמו. שינוי השם הוא מקומי בלבד: אם הענף כבר נדחף, צריך גם למחוק את השם הישן במאגר המרוחק ולדחוף את החדש.
נסו את הפקודות האלה בעורך הטרמינל אונליין: shell אמיתי בדפדפן, בלי להתקין כלום.
תחביר
| פקודה | מה היא עושה |
|---|---|
git branch -m new-name | שינוי שם הענף שבו אתם נמצאים |
git branch -m old-name new-name | שינוי שם של ענף אחר לפי שמו |
git branch -M new-name | שינוי שם בכוח (דריסת שם קיים) |
שינוי שם של ענף שנמצא במאגר המרוחק
שינוי השם הוא מקומי, ולכן ענף שנדחף דורש שלושה צעדים נוספים.
| שלב | פקודה | תוצאה |
|---|---|---|
| 1 | git branch -m old new | שינוי שם הענף מקומית |
| 2 | git push origin --delete old | מחיקת השם הישן במאגר המרוחק |
| 3 | git push -u origin new | דחיפת השם החדש והגדרת upstream |
שאלות נפוצות על שינוי שם של ענף ב-Git
איך משנים את שם הענף שבו אני נמצא?
הריצו
git branch -m new-name עם השם החדש בלבד. Git משנה את שם הענף הנוכחי במקום: אתם נשארים בו, והקומיטים וההיסטוריה לא משתנים.איך משנים שם של ענף בלי לעבור אליו?
העבירו את שני השמות:
git branch -m old-name new-name. זה משנה את old-name ל-new-name גם אם אתם נמצאים כרגע בענף אחר.איך משנים שם של ענף שכבר נמצא ב-GitHub?
שנו את השם מקומית עם
git branch -m old new, מחקו את השם הישן במאגר המרוחק עם git push origin --delete old, ואז דחפו את השם החדש והגדירו לו upstream עם git push -u origin new. כל מי שיש אצלו את הענף הישן יצטרך לעדכן את העותק המקומי שלו.מה ההבדל בין -m לבין -M?
-m (move) משנה את שם הענף אבל מסרב אם כבר קיים ענף בשם היעד, כך שאי אפשר לדרוס ענף אחר בטעות. -M כופה את שינוי השם ודורס ענף קיים בשם הזה. השתמשו ב--m, אלא אם אתם מתכוונים במפורש לדרוס.אפשר לתרגל את זה אונליין?
כן. פתחו את עורך הטרמינל אונליין כדי להריץ את הפקודות האלה ב-shell אמיתי בדפדפן, בלי להתקין כלום. גם קורס ה-Git האינטראקטיבי והחינמי של Coddy מלמד עבודה עם ענפים מההתחלה ועד הסוף.