raw.githubusercontent.com
ใช้ CDN เนื่องจากคุณสามารถตรวจสอบได้โดยทำดังนี้
$ dig raw.githubusercontent.com +short
github.map.fastly.net.
1.2.3.4
ดังนั้นหาก CDN นั้นบังคับใช้การแคชที่ใช้ TTL (และดูเหมือนว่าจะเป็นเช่นนั้นโดยการตรวจสอบ Cache-Control
ส่วนหัวของ 300 วินาที) คุณติดอยู่กับมัน
อย่างที่คุณเห็นถามด้วย --no-cache
ไม่ทำอะไรเลยเพราะนั่นคือวิธีที่พวกเขาออกแบบมาเพื่อป้องกันการละเมิด
คุณอาจจะข้ามมันในหลาย ๆ hacky วิธีที่ฉันจะไม่แสดง แต่โดยทั่วไปคุณกำลังพยายามหลีกเลี่ยงนโยบายที่กำหนดโดย github และฉันอยากจะแนะนำ ยิ่งไปกว่านั้นวิธีการที่ใช้งานได้ในปัจจุบันอาจไม่สามารถใช้งานได้ในวันพรุ่งนี้หรือโดยการโทร
ดังนั้น .. เพียงแค่รอให้ TTL หมดอายุและรับสำเนาใหม่
คุณอาจเขียนสคริปต์ที่โพลทุก ๆ วินาที (อย่าทำให้เร็วเกินไป) และรอจนกว่าคุณจะเห็น X-Cache: MISS
- นั่นจะบอกคุณว่าคุณได้รับสำเนาใหม่ หรือว่าตรวจสอบ ETag
สำหรับการเปลี่ยนแปลง
หรือคุณอาจตรวจสอบว่า github ให้ API กับคุณเพื่อทำให้รหัสของคุณเป็นโมฆะหรือวิธีเรียกไฟล์ที่มีคอมมิทล่าสุดเช่น: https://raw.githubusercontent.com/xxxxx/script.sh?commit=12345