เมื่อใดควรใช้เครื่องหมายทับใน gitignore
ฉันพยายามทำความเข้าใจ.gitignoreไวยากรณ์ให้ชัดเจนยิ่งขึ้นและโดยเฉพาะอย่างยิ่งเท่าที่เกี่ยวข้องกับhttps://github.com/github/gitignore gitignores ฉันเห็นว่าเครื่องหมายทับนำหน้าใช้เพื่อจับคู่เฉพาะชื่อพา ธ ที่สัมพันธ์กับตำแหน่งของ.gitignoreไฟล์ (จากhttp://git-scm.com/docs/gitignore ): เครื่องหมายทับนำหน้าตรงกับจุดเริ่มต้นของชื่อพา ธ ตัวอย่างเช่น "/*.c" ตรงกับ "cat-file.c" แต่ไม่ใช่ "mozilla-sha1 / sha1.c" แต่จะเกิดอะไรขึ้นเมื่อฉันลบเครื่องหมายทับ เท่าที่ฉันเข้าใจมีสองกรณี: หากรูปแบบไม่มีเครื่องหมายทับ (หรือมีเพียงเครื่องหมายทับซึ่งหมายความว่าควรตรงกับไดเร็กทอรี) การค้นหาจะดำเนินการภายในแผนผังไดเร็กทอรีทั้งหมด ตัวอย่างเช่นรูปแบบdir/จะตรงกับ<root>/dir, <root>/a/dir, <root>/a/b/c/.../dirและอื่น ๆ ที่<root>เป็นที่ตั้งของ.gitignoreไฟล์ หากรูปแบบมีเครื่องหมายทับซึ่งไม่อยู่ในตำแหน่งต่อท้าย (ไม่ใช่อักขระตัวสุดท้าย) รูปแบบนั้นจะจับคู่กับชื่อพา ธ ที่สัมพันธ์กับตำแหน่ง.gitignoreไฟล์เท่านั้น นี่คือตัวอย่างที่ฉันทำขึ้นเพื่อตรวจสอบพฤติกรรมนี้: # Directory structure: <root> ├─ dir/ │ └─ test ├─ src/ │ ├─ dir/ │ │ └─ …