ในที่เก็บ git สาขาระยะไกลที่ฉันไม่ได้ติดตามถูกลบ เมื่อฉันพิมพ์
git branch -r
สาขาที่ถูกลบยังคงปรากฏขึ้น (และฉันสามารถตรวจสอบได้)
ฉันต้องเรียกใช้คำสั่ง git อะไรเพื่ออัปเดตข้อมูลนี้
ในที่เก็บ git สาขาระยะไกลที่ฉันไม่ได้ติดตามถูกลบ เมื่อฉันพิมพ์
git branch -r
สาขาที่ถูกลบยังคงปรากฏขึ้น (และฉันสามารถตรวจสอบได้)
ฉันต้องเรียกใช้คำสั่ง git อะไรเพื่ออัปเดตข้อมูลนี้
คำตอบ:
หากคุณดำเนินการบางอย่างเช่น
git branch -d -r remote_name/branch_name
คุณลบการชำระเงินในพื้นที่ของคุณเท่านั้น คำสั่งนี้ไม่ได้ทำอะไรกับที่เก็บระยะไกลซึ่งเป็นสาเหตุที่ยังคงปรากฏขึ้น
สารละลาย:
git push origin :branch_name
จะลบสาขาระยะไกล (สังเกต ':') และ
git branch -d branch_name
จะลบการชำระเงินในพื้นที่ของคุณ
( อ้างอิง )
git push <remote> --delete <branchname>เพื่อลบสาขาระยะไกลได้เช่นกัน
หากเป็นสาขาในที่เก็บระยะไกลที่ถูกลบและคุณต้องการอัปเดตสาขาการติดตามระยะไกลในเครื่องทั้งหมดพร้อมกันคุณสามารถใช้
$ git remote prune <remotename>
เพื่อลบสาขาการติดตามระยะไกลที่อัปเดตทั้งหมดสำหรับรีโมตที่กำหนด (เช่นสาขาที่ติดตามสาขาซึ่งถูกลบออกในที่เก็บระยะไกล)
ดูgit remoteเอกสารประกอบ
git fetch?
git gcเพียงแค่แพ็คอ็อบเจ็กต์และการอ้างอิงและลบอ็อบเจ็กต์ที่ไม่ได้อ้างถึงขณะอยู่ที่มัน
git remote update --prune
ควรรีเฟรชสาขาของรีโมตทั้งหมดเพิ่มรายการใหม่และลบสาขาที่ถูกลบออก
แก้ไข: คำสั่งอัปเดตระยะไกลโดยทั่วไปจะดึงรายการสาขาบนรีโมท --pruneตัวเลือกที่จะได้รับการกำจัดของคุณท้องถิ่นสาขาการติดตามระยะไกลที่ชี้ไปที่สาขาที่มีอยู่ไม่ได้อีกต่อไปในระยะไกล
นอกจากนี้ยังมีประโยชน์สำหรับการดูสาขาระยะไกลใหม่:
git fetch --all
คุณสามารถรวมแฟล็ก-rและ-dเพื่อลบสาขาระยะไกลได้
ลองใช้คำสั่งนี้
git gc --prune=now