दूरस्थ सर्वर में मेरे पास एक रिपॉजिटरी का चेक चेकआउट करने के लिए एक पोस्ट-प्राप्त हुक सेट है:
#!/bin/sh
GIT_WORK_TREE=/var/www/<website> git checkout -f
लेकिन जब मैं सर्वर में अपने स्थानीय मशीन से गिट रिपॉजिटरी में एक धक्का देता हूं, तो मुझे निम्नलिखित त्रुटि संदेश मिलते हैं:
remote: error: unable to unlink old '<file>' (Permission denied)
यह कई बार दिखाई देता है, लगभग हर फ़ाइल के लिए एक त्रुटि संदेश।
हालाँकि मेरे पास एक README.txt फाइल है जिसे मैं git का उपयोग करके बदलने में सक्षम हूं, यहां इसकी अनुमति है:
-rw-r--r-- 1 <serverusername> <serverusername> 2939 Aug 2 10:58 README.txt
लेकिन एक ही मालिक और एक ही अनुमतियों के साथ अन्य फाइलें, मुझे वह त्रुटि दें।
किसी अन्य वेबसाइट के लिए एक अन्य स्थानीय रिपॉजिटरी में, मेरे पास मालिक के रूप में मेरे स्थानीय मशीन उपयोगकर्ता नाम की फाइलें हैं, और जब मैं दूरस्थ सर्वर पर धकेलता हूं तो यह फाइलों के दूरस्थ सर्वर मालिक का सम्मान करता है और एक आकर्षण की तरह काम करता है।
जाहिर है कि यह अनुमतियों से संबंधित त्रुटि लगती है, लेकिन मुझे इसे ठीक करने का कोई तरीका नहीं मिल रहा है, कोई सुझाव?
sudo chmod -R g+w
दोषी फोल्डरों का उपयोग करके ठीक किया ।