Git Delete Local Branch: מחיקת ענף מקומי
עודכן לאחרונה
אחרי שהעבודה בענף מוזגה, מוחקים אותו עם git branch -d <branch>. Git מסרב אם יש בענף קומיטים שלא מוזגו לשום מקום: זו בדיקת בטיחות. כדי למחוק אותו בכל זאת, השתמשו ב--D באות גדולה. מחיקת ענף מקומי אף פעם לא נוגעת בעותק שבמאגר המרוחק; לשם כך יש פקודה נפרדת.
נסו את הפקודות האלה בעורך הטרמינל אונליין: shell אמיתי בדפדפן, בלי להתקין כלום.
תחביר
| פקודה | מה היא עושה |
|---|---|
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 |
דוגמה מלאה
סיום פיצ'ר, מיזוג שלו וניקוי הענף המקומי.
| שלב | פקודה | תוצאה |
|---|---|---|
| 1 | git switch main | יציאה מהענף שרוצים למחוק |
| 2 | git merge feature | הכנסת הקומיטים של הפיצ'ר ל-main |
| 3 | git 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 מוביל אתכם מהקומיט הראשון ועד ענפים ומיזוג, צעד אחר צעד.