मेरे सर्वर पर, मेरे पास दो उपयोगकर्ता हैं, www-data
(जिसका उपयोग nginx द्वारा किया जाता है) और git
। git
उपयोगकर्ता का एक भंडार है जिसमें मेरी वेबसाइट का कोड है, और www-data
उपयोगकर्ता उस भंडार का एक क्लोन है (जो nginx के लिए webroot के रूप में कार्य करता है)। मैं वर्कफ़्लो स्थापित करना चाहता हूं जैसे कि git
के भंडार को www-data
के भंडार को अद्यतन करने के लिए, इस प्रकार मेरी वेबसाइट अपडेट करने का कारण बनता है।गिट-आधारित वेबसाइट परिनियोजन वर्कफ़्लो
इन भंडारों के लिए हुक सेट करने का सही तरीका क्या है (जो इन दो उपयोगकर्ताओं के विशेषाधिकारों और अनुमतियों को भी ध्यान में रखता है)?
क्या यह वास्तव में एक अच्छा विचार है कि उपयोगकर्ता द्वारा चलाए गए उपयोगकर्ता खाते के स्वामित्व वाली आपकी सभी सार्वजनिक सामग्री हो? यदि सर्वर या आपके कोड का शोषण किया जाता है, तो शोषण आपके डेटाबेस कनेक्शन पर स्क्रिबल करने के बजाय लगातार डेटा को संशोधित कर सकता है ... – sarnold
फिर मुझे सार्वजनिक सामग्री को 'गिट' के स्वामित्व में बनाना चाहिए, और इसे हर किसी के द्वारा पठनीय बनाना चाहिए ? इससे इस प्रश्न में अनुमति के मुद्दों को भी सरल बनाया जाएगा ... – Chetan
_If_ आप समाधान के रूप में इसके साथ संतुष्ट हैं, फिर हां, यह आपको 'गिट' से' www-data तक धक्का देने का एक नया तरीका खोजने की परेशानी बचाएगा 'repos। :) क्या आप सर्वर पर दो गिट रेपो पसंद करते हैं? एक अन्य विकल्प फाइलों के समूह स्वामित्व को सर्वर के समूहों में से एक होने के लिए सेट करना है, और समूह विशेषाधिकारों के माध्यम से पढ़ने की अनुमति देना है। – sarnold