ในกรณีของฉันฉันใช้โฟลเดอร์ git ที่มีสิทธิ์ไม่ดีที่เก็บไว้ในไดรฟ์เดียวกันกับ repo แต่อาจเหมือนกันกับ ssh แม้ว่าคุณจะใช้ผู้ใช้ล็อกอินที่ได้รับอนุญาตก็ตาม
ตรวจสอบว่าคุณมีสิทธิ์ที่ถูกต้องในการเขียนบน repo ที่อยู่ห่างไกลหรือไม่
ตัวอย่าง:
เริ่มต้น repo ในพื้นที่และห่างไกล
git init /tmp/src
git init --bare /tmp/dst
cd /tmp/src
การเพิ่ม repo ระยะไกลไปยังต้นทาง
src > git remote add dest /tmp/dst
การจำลองปัญหา
src > chmod -R 555 /tmp/dst
การเพิ่มไฟล์ปลอมและผลักดัน
src > touch a && git add a && git commit -m 'demo'
src > git push --set-upstream dest master
src > git push
Counting objects: 3, done.
Writing objects: 99% (2/3), 202 bytes | 0 bytes/s.
Git แฮงค์
วิธีการแก้
src > chmod -R 775 /tmp/dst