อักขระใดผิดกฎหมายภายในชื่อสาขา


คำตอบ:


299

กฎการตั้งชื่อสำหรับ refname:

Git กำหนดกฎต่อไปนี้เกี่ยวกับวิธีการอ้างอิงชื่อ:

  1. พวกเขาสามารถรวมเฉือน/สำหรับลำดับชั้น (directory) การจัดกลุ่ม แต่ไม่มีส่วนประกอบเฉือนแยกสามารถเริ่มต้นด้วยจุดหรือจบลงด้วยการลำดับ..lock

  2. ต้องมีอย่างน้อยหนึ่ง/รายการ นี้บังคับใช้การปรากฏตัวของหมวดหมู่เช่นที่heads/, tags/ฯลฯ แต่ชื่อจริงไม่ได้ถูก จำกัด หากใช้--allow-onelevelตัวเลือกกฎนี้จะถูกยกเลิก

  3. พวกเขาไม่สามารถมีจุดสองจุดติดต่อกัน..ได้ทุกที่

  4. พวกเขาไม่สามารถมีการควบคุมตัวอักษร ASCII (เช่นไบต์ที่มีค่าต่ำกว่า\040หรือ\177 DEL), พื้นที่, หนอน~, เครื่องหมาย^หรือลำไส้ใหญ่:ได้ทุกที่

  5. พวกเขาไม่สามารถมีเครื่องหมายคำถาม?ดอกจัน*หรือเครื่องหมายวงเล็บเปิด[ได้ทุกที่ ดู--refspec-patternตัวเลือกด้านล่างสำหรับข้อยกเว้นสำหรับกฎนี้

  6. พวกเขาไม่สามารถเริ่มต้นหรือสิ้นสุดด้วยเครื่องหมายทับ/หรือมีหลายเครื่องหมายทับติดต่อกัน (ดู--normalizeตัวเลือกด้านล่างสำหรับข้อยกเว้นของกฎนี้)

  7. พวกเขาไม่สามารถลงท้ายด้วยจุด ..

  8. @{พวกเขาไม่สามารถมีลำดับ

  9. @พวกเขาไม่สามารถเป็นตัวเดียว

  10. \พวกเขาไม่สามารถมี

ยิ่งไปกว่านั้นกฎเพิ่มเติมสำหรับชื่อสาขา:

  1. พวกเขาไม่สามารถเริ่มต้นด้วยเส้นประ -

ขอขอบคุณที่Jakub Narębskiที่หน้าคนสำหรับการgit check-ref-formatมีรายละเอียดเพิ่มเติม


9
มูลค่าการกล่าวขวัญว่า '>' ได้รับอนุญาต แต่เพื่อสลับไปที่สาขาในทุบตีนั้นจะต้องหลบหนีด้วยก่อนหน้า '\'
igniteflow

3
ฉันสับสนเกี่ยวกับกฎ # 2 ในman page ที่คุณเชื่อมโยง มีข้อความแจ้งว่า"2. ต้องมีอย่างน้อยหนึ่ง/รายการ" กรุณาอธิบาย? ไม่มีสาขาของฉัน/ในชื่อ
chharvey

7
@chharvey: เป็น“สาขา” โดยไม่/ได้heads/ใช้ได้กับมัน“โดยอัตโนมัติ” จริง: โดยไม่ต้อง/ก็ยังไม่ชัดเจน แต่ถ้ามันเป็นสาขาหรือแท็กหรือสิ่งอื่น ...
โรเบิร์ต Siemer

1
@DMTintner: อนุญาตให้ใช้เครื่องหมายจุลภาค
Robert Siemer

3
นี่คือนิพจน์ปกติสำหรับ/^ه\./เหมือนกันนี้.\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\้องทาง \ \ \ \ \ \ \ \ [\\] / g สิ่งนี้จะค้นหาอักขระที่ไม่ถูกต้องเพื่อให้คุณสามารถแทนที่ด้วย '-' หรืออักขระอื่น ๆ ที่คุณต้องการ
Tony Brix
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.