สถานการณ์ของฉันคือสิ่งนี้ ... ใครบางคนที่ทำงานใน repo เดียวกันได้ลบสาขาจาก repo ในพื้นที่ของเขา & จากระยะไกล ...
คนส่วนใหญ่ที่ถามเกี่ยวกับปัญหาประเภทนี้ใน Stack Overflow หรือเว็บไซต์อื่น ๆ ที่มีปัญหาสาขาต่าง ๆ ยังคงแสดงอยู่ในรายการสาขาการติดตามระยะไกลgit branch -a
ที่ด้านล่าง:
* master
develop
feature_blah
remotes/origin/master
remotes/origin/develop
remotes/origin/feature_blah
remotes/origin/random_branch_I_want_deleted
อย่างไรก็ตามในสถานการณ์ของฉันสาขาที่ไม่ควรอยู่ที่นั่นอยู่ในท้องถิ่น:
* master
develop
feature_blah
random_branch_I_want_deleted
remotes/origin/master
remotes/origin/develop
remotes/origin/feature_blah
เมื่อฉันทำสิ่งใดสิ่งหนึ่งต่อไปนี้มันจะไม่ถูกลบในเครื่อง:
$ git prune
ฉันก็ลอง:
$ git remote prune origin
$ git fetch --prune
ข้อมูลที่เป็นประโยชน์เพิ่มเติม: เมื่อฉันตรวจสอบgit remote show origin
สิ่งนี้จะมีลักษณะ:
* remote origin
Fetch URL: utilities:homeconnections_ui.git
Push URL: utilities:homeconnections_ui.git
HEAD branch: master
Remote branches:
master tracked
develop tracked
feature_blah tracked
other123 tracked
other444 tracked
other999 tracked
Local branches configured for 'git pull':
develop merges with remote develop
feature_blah merges with remote other999
master merges with remote master
random_branch_I_want_deleted merges with remote random_branch_I_want_deleted
Local refs configured for 'git push':
develop pushes to develop (local out of date)
master pushes to master (up to date)
feature_blah pushes to feature_blah(up to date)
โปรดสังเกตว่ามันมีเฉพาะในส่วนที่มีชื่อว่า Local branches configured for 'git pull':
ทำไม?
x/y
): มันได้รับการแก้ไข (ดูคำตอบของฉันด้านล่าง )
git branch -d the_local_branch