สาขาคอมไพล์“ เก่า” คืออะไร?


133

สาขาคอมไพล์ "เก่า" เป็นคำที่ฉันได้ยินมามาก ฉันรู้ว่ามันมีส่วนเกี่ยวข้องกับกิ่งไม้ซึ่งถือว่ามีประโยชน์น้อยกว่าหรือไม่มีประโยชน์ แต่ไม่สามารถหาคำจำกัดความที่แน่นอนได้ สาขาคอมไพล์ "เก่า" คืออะไร?

คำตอบ:


96

การอ้างอิงที่เก่าที่สุดสำหรับ "เก่า" พบในการกระทำ e194cd1 (มกราคม 2550, Git 1.5.0) ซึ่งตรวจพบ " สาขาการติดตามเก่าในระยะไกล ": เมื่อติดตามสาขาที่ถูกลบโดยระบบระยะไกล
ดังนั้นgit remote prune.

นั่นคือคำจำกัดความหลักสำหรับสาขาเก่า: สาขาการติดตามระยะไกล (การอ้างอิงภายในของสาขา repo ระยะไกล) ซึ่งไม่ติดตามสิ่งใดอีกต่อไป (เนื่องจากสาขาจริงบน repo ระยะไกลหายไป)

git remote show สามารถแสดงรายการเหล่านั้นได้


อนึ่งคุณมีคำจำกัดความอีกสองคำของ "เก่า" ในระบบ Git:

  • อ้างอิงถึง "เก่า" อีกเกี่ยวข้องgit reflog --stale-fixในการกระทำ 1389d9d (Git 1.5.0) สำหรับการติดตาม " เสียกระทำ ": กระทำที่ไม่สามารถเข้าถึงได้จากส่วนใดของ refs และมีวัตถุที่ขาดหายไปในหมู่ผู้ที่กระทำวัตถุต้นไม้หรือหยด เข้าถึงได้จากที่ไม่สามารถเข้าถึงได้จากการอ้างอิงใด ๆ
    ซึ่งช่วยแก้ไขสถานการณ์หลังจากเรียกใช้ non reflog- git pruneawareness จาก git รุ่นเก่าต่อหน้า reflogs

  • Commit 740fdd2 (มีนาคม 2008, Git 1.5.5) ยังแนะนำ "stale" สำหรับการอ้างอิงเชิงสัญลักษณ์เมื่อ ref ที่ชี้ว่าไม่มีอยู่อีกต่อไป


ดังที่กล่าวโดย @SteelToe: คำจำกัดความของสาขาเก่าตามเอกสารของ GitHubคือสาขาที่ไม่มีการกระทำใด ๆ ในช่วง 3 เดือนที่ผ่านมา
โดยทั่วไปจะบ่งบอกถึงสาขาเก่า / ไม่ได้รับการดูแล / ไม่ใช่สาขาปัจจุบัน


ฉันเห็นสิ่งนี้เมื่อฉันกำลังผลักดันไปยังแหล่งกำเนิดระยะไกลใหม่เอี่ยมเพราะมันไม่มีสาขาของฉันเลย (ชัด ๆ )
Noumenon

"สาขาการติดตามระยะไกล" <- เมื่อคุณพูดสิ่งนี้มันทำให้ฉันคิดว่าคุณกำลังพูดถึงสาขาที่มีอยู่ใน repo ระยะไกล แต่สิ่งที่คุณหมายถึงคือสาขาระยะไกลที่คุณเคยติดตามในพื้นที่มาก่อน แต่ "สาขาจริงใน repo ระยะไกลหายไป" ใช่ไหม?
น้ำผึ้ง

@ ฮันนี่ (ช้าไปไม่กี่เดือน) ใช่นั่นคือความคิด ฉันได้อัปเดตคำตอบเพื่อเพิ่มลิงก์ที่แสดงให้เห็นว่าสาขาการติดตามระยะไกลคืออะไร
VonC

67

คำจำกัดความของสาขาเก่าตามเอกสารของ GitHub คือสาขาที่ไม่มีการกระทำใด ๆ ในช่วง 3 เดือนที่ผ่านมา

โดยทั่วไปจะบ่งบอกถึงสาขาเก่า / ไม่ได้รับการดูแล / ไม่ใช่สาขาปัจจุบัน

ดูข้อมูลเพิ่มเติมได้ที่https://help.github.com/articles/viewing-branches-in-your-repository/


17

นั่นเป็นเพราะไม่มี "คำจำกัดความที่แน่นอน" "Stale git branch", "stale data", "old configuration options" - สิ่งเหล่านี้ไม่มีคำจำกัดความที่แน่นอนแต่ทั้งหมดนี้หมายถึงสิ่งที่ถือว่าเก่า / ไม่ได้รับการดูแล / ไม่เป็นปัจจุบัน / อาจเสีย

ดังนั้น "สาขา git เก่า" โดยทั่วไปจึงเป็นสาขาหนึ่งของที่เก็บที่ไม่ได้สัมผัสมาเป็นเวลานาน บางทีมันอาจจะแตกอาจจะไม่ แน่นอนว่ามันไม่ใช่สาขาการพัฒนาที่ใช้งานอยู่ในปัจจุบันและไม่มีใครได้ดูมาระยะหนึ่งแล้ว


12
บน github สาขาที่ไม่ได้รับการอัปเดตในช่วง 3 เดือนที่ผ่านมาจะถือว่าไม่มีการอัปเดต: help.github.com/articles/viewing-branches-in-your-repository
Ludovic Ronsin

3

สาขาเก่าคือสาขาที่ไม่มีกิจกรรมหลังจากเวลาผ่านไปสักระยะ ใน Github มันเก่าหลังจากไม่มีการใช้งาน 3 เดือน

เหตุผลที่โครงการมีสาขาเก่า: คุณสมบัติที่ยังไม่เผยแพร่ต้นแบบโซลูชันทางเลือกไม่สมบูรณ์ไม่เข้ากัน

อ่านเพิ่มเติม

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.