ไม่มีการระบุเหตุการณ์ที่ไม่ได้ระบุ
ฉันกำลังดูไฟล์สำหรับการเปลี่ยนแปลงโดยใช้ inotify เหตุการณ์ (มันเกิดขึ้นจาก Python โทรเข้า libc) สำหรับไฟล์บางช่วงgit cloneผมเห็นบางสิ่งบางอย่างที่แปลก: ผมเห็นIN_CREATEเหตุการณ์และฉันเห็นทางlsว่าไฟล์มีเนื้อหา แต่ผมไม่เคยเห็นหรือIN_MODIFY IN_CLOSE_WRITEนี่เป็นสาเหตุให้ฉันมีปัญหาเนื่องจากฉันต้องการตอบกลับIN_CLOSE_WRITEในไฟล์: โดยเฉพาะเพื่อเริ่มต้นการอัปโหลดเนื้อหาไฟล์ แฟ้มที่มีพฤติกรรมผิดปกติอยู่ใน.git/objects/packไดเรกทอรีและพวกเขาสิ้นสุดในหรือ.pack .idxไฟล์อื่น ๆ ที่คอมไพล์สร้างมีเชนมากกว่าปกติIN_CREATE-> IN_MODIFY-> IN_CLOSE_WRITE(ฉันไม่ได้ดูIN_OPENเหตุการณ์) นี่คือ Docker บน MacOS แต่ฉันได้เห็นหลักฐานของ Docker บน Linux ในระบบรีโมตแล้วดังนั้นความสงสัยของฉันคือ MacOS นั้นไม่เกี่ยวข้องกัน ฉันเห็นสิ่งนี้หากกำลังดูและgit cloneอยู่ในคอนเทนเนอร์นักเทียบท่าเดียวกัน คำถามของฉัน: เหตุใดเหตุการณ์เหล่านี้จึงหายไปในไฟล์เหล่านี้ สิ่งที่สามารถทำได้เกี่ยวกับมันได้หรือไม่ โดยเฉพาะฉันจะตอบสนองต่อความสมบูรณ์ของการเขียนไฟล์เหล่านี้ได้อย่างไร? หมายเหตุ: นึกคิดฉันต้องการตอบสนองเมื่อการเขียนเป็น "เสร็จสิ้น" เพื่อหลีกเลี่ยงความจำเป็น / (ไม่ถูกต้อง) การอัปโหลดการเขียน "ยังไม่เสร็จ" แก้ไข: การอ่านhttps://developer.ibm.com/tutorials/l-inotify/ดูเหมือนว่าสิ่งที่ฉันเห็นมีความสอดคล้องกับ ไฟล์ชั่วคราวแยกต่างหากที่มีชื่อเหมือนtmp_pack_hBV4Alzกำลังสร้างแก้ไขและปิด สร้างฮาร์ดลิงก์ไปยังไฟล์นี้โดยใช้.packชื่อสุดท้าย tmp_pack_hBV4Alzชื่อเดิมจะถูกลบ ฉันคิดว่าปัญหาของฉันซึ่งพยายามใช้ …