Menu
Coddy logo textTech

Git Delete Local Branch: מחיקת ענף מקומי

עודכן לאחרונה

אחרי שהעבודה בענף מוזגה, מוחקים אותו עם git branch -d <branch>. Git מסרב אם יש בענף קומיטים שלא מוזגו לשום מקום: זו בדיקת בטיחות. כדי למחוק אותו בכל זאת, השתמשו ב--D באות גדולה. מחיקת ענף מקומי אף פעם לא נוגעת בעותק שבמאגר המרוחק; לשם כך יש פקודה נפרדת.

נסו את הפקודות האלה בעורך הטרמינל אונליין: shell אמיתי בדפדפן, בלי להתקין כלום.

git branch -d מוחק רק את מצביע הענף; הקומיטים שמוזגו נשארים בהיסטוריה של main.

תחביר

פקודהמה היא עושה
git branch -d featureמחיקת feature (רק אם מוזג)
git branch -D featureמחיקה בכוח של feature גם אם לא מוזג
git branch -d branch1 branch2מחיקת כמה ענפים בבת אחת

מקרים נפוצים

מטרהפקודה
מחיקת ענף שמוזגgit branch -d old-feature
מחיקה בכוח של ענף שלא מוזגgit branch -D scratch
מחיקת הענף שבו אתם נמצאיםgit switch main ואז git branch -d feature
בדיקה אילו ענפים מוזגוgit branch --merged

דוגמה מלאה

סיום פיצ'ר, מיזוג שלו וניקוי הענף המקומי.

שלבפקודהתוצאה
1git switch mainיציאה מהענף שרוצים למחוק
2git merge featureהכנסת הקומיטים של הפיצ'ר ל-main
3git branch -d featureמחיקת הענף שכבר מוזג

שאלות נפוצות על מחיקת ענף מקומי ב-Git

מה ההבדל בין git branch -d לבין -D?
-d היא המחיקה הבטוחה: Git מסיר את הענף רק אם הקומיטים שלו כבר מוזגו לענף אחר, כך שאי אפשר לאבד עבודה בטעות. -D היא המחיקה בכוח (קיצור של --delete --force): היא מסירה את הענף בכל מקרה, גם אם יש בו קומיטים שלא מוזגו. השתמשו ב--d כברירת מחדל, ופנו ל--D רק כשאתם בטוחים שאתם רוצים לזרוק את הקומיטים של הענף.
איך מוחקים את הענף שבו אני נמצא עכשיו?
אי אפשר למחוק את הענף שבו אתם נמצאים. עברו קודם לענף אחר עם git switch main (או git checkout main), ואז הריצו git branch -d feature. אם תנסו למחוק את הענף הנוכחי, Git יחזיר את השגיאה "Cannot delete branch ... checked out".
האם מחיקת ענף מקומי מוחקת אותו גם ב-GitHub?
לא. git branch -d מסיר את הענף רק מהמאגר המקומי. הענף במאגר המרוחק (GitHub, GitLab וכו') נשאר עד שמוחקים אותו בנפרד עם git push origin --delete feature.
אפשר לשחזר ענף שמחקתי?
בדרך כלל כן, אם זה היה לאחרונה. הריצו git reflog כדי למצוא את הקומיט שהענף הצביע עליו, ואז צרו אותו מחדש עם git branch feature <commit-hash>. הקומיטים לא נמחקים מיד באיסוף הזבל, כך שבדרך כלל אפשר לשחזר ענף שנמחק בטעות.
אפשר לתרגל את זה אונליין?
כן. פתחו את עורך הטרמינל אונליין כדי להריץ את הפקודות האלה ב-shell אמיתי בדפדפן, בלי להתקין כלום. כשתרצו מסגרת מסודרת, קורס ה-Git האינטראקטיבי והחינמי של Coddy מוביל אתכם מהקומיט הראשון ועד ענפים ומיזוג, צעד אחר צעד.
איור של שפות התכנות ב-Coddy

ללמוד Git עם Coddy

להתחיל