برنامه نویسی

🧹 چگونه می توان تمام شاخه های GIT محلی را به جز موجود فعلی حذف کرد

مدتی با Git کار می کنید؟ مخزن محلی شما ممکن است با شاخه های قدیمی مورد نیاز شما به هم ریخته باشد.

شمارش

اگر از تمیز کردن آنها یکی یکی خسته شده اید ، در اینجا یک لاینر وجود دارد تمام شاخه های GIT محلی را به جز یکی از مواردی که در حال حاضر در آن هستید حذف کنیدبشر 🧼


✅ دستور

git branch | grep -v "$(git rev-parse --abbrev-ref HEAD)" | xargs git branch -D
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید


🧠 چه کاری انجام می دهد

بیایید آن را به مرحله به مرحله تقسیم کنیم:

🔍 git rev-parse --abbrev-ref HEAD

این به شما نام می دهد شاخه فعلی شما روشن هستید

main
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

📋 git branch

همه شاخه های محلی را لیست می کند ، مانند این:

  feature/login
  feature/profile
* main
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

🔎 grep -v "$(git rev-parse --abbrev-ref HEAD)"

این شعبه فعلی را از لیست حذف می کند. -v به معنای “خطوط تطبیق” است.

🧹 xargs git branch -D

این پردازش نیرو (-D) هر شاخه از خروجی قبلی منتقل می شود.


⚠ هشدار

این دستور خواهد شد نیروی حذف تمام شاخه های محلی به جز یکی از فعلی شما. یعنی:

  • هیچ تغییرات ناآشنا در آن شاخه ها از بین می روند.
  • این نه شاخه های از راه دور را تحت تأثیر قرار دهید.
  • با احتیاط استفاده کنید.

اگر می خواهید ایمن باشید ، جایگزین کنید -D با -d:

git branch | grep -v "$(git rev-parse --abbrev-ref HEAD)" | xargs git branch -d
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

این تنها شاخه هایی را که در شاخه فعلی ادغام شده اند حذف می کند.


📦 نکته حرفه ای: آن را به عنوان نام مستعار تبدیل کنید

اگر خود را اغلب از این استفاده می کنید ، آن را به نام مستعار پوسته خود اضافه کنید:

alias git-clean-branches='git branch | grep -v "$(git rev-parse --abbrev-ref HEAD)" | xargs git branch -D'
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

سپس فقط اجرا کنید:

git-clean-branches
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید


🚀 خلاصه

هنگامی که با شاخه های قدیمی تمام شد و می خواهید فضای کاری خود را تمیز نگه دارید ، این تک لاینر شما را از حذف هر شاخه به صورت دستی نجات می دهد.

نه بیشتر:

git branch -d branch1
git branch -d branch2
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

فقط یک دستور و شاخه های محلی شما دوباره مرتب هستند. 👌

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا