में धक्का दिया गया है कि मैं कैसे निर्धारित करूं कि किसने भंडार को धक्का दिया?गिट: पोस्ट-प्राप्त हुक
आईई। कोई git push origin master
करता है और origin
रेपो पर पोस्ट-प्राप्त हुक में मुझे किसी के नाम या ई-मेल का उपयोग करने की आवश्यकता होती है।
में धक्का दिया गया है कि मैं कैसे निर्धारित करूं कि किसने भंडार को धक्का दिया?गिट: पोस्ट-प्राप्त हुक
आईई। कोई git push origin master
करता है और origin
रेपो पर पोस्ट-प्राप्त हुक में मुझे किसी के नाम या ई-मेल का उपयोग करने की आवश्यकता होती है।
यदि आप सर्वर पर परिवर्तन को धक्का देने के लिए एसएसएच प्रोटोकॉल का उपयोग कर रहे हैं, प्रत्येक उपयोगकर्ता के पास सर्वर पर अपना खाता है, तो आपकी स्क्रिप्ट उस उपयोगकर्ता के रूप में चलनी चाहिए जो पुश कर रहा है। तो, पुश करने वाले व्यक्ति का उपयोगकर्ता नाम प्राप्त करने के लिए आपको whoami
या id -un
का उपयोग करने में सक्षम होना चाहिए।
यदि आप इस सेटअप का उपयोग नहीं कर रहे हैं, तो धक्का देने का ट्रैक रखने का सबसे अच्छा तरीका शायद Gitolite, एक शक्तिशाली गिट प्रमाणीकरण और प्रमाणीकरण प्रणाली का उपयोग कर रहा है। गिटोलाइट में, आप update.secondary
and post-update.secondary
hooks का उपयोग कर सकते हैं, जिसमें GL_USER
पर्यावरण चर सेट वर्तमान गिटोलाइट उपयोगकर्ता के लिए होगा।
आप गिट का उपयोग करके यह नहीं बता सकते हैं। यदि आप धक्का देने के लिए एसएसएच का उपयोग करते हैं, तो आप उपयोगकर्ता नाम प्राप्त करने के लिए एसएसएच का उपयोग कर सकते हैं, यदि आप गिटोलाइट जैसे उपयोगकर्ता-प्रबंधन फ्रंटेंड का उपयोग करते हैं, तो आप उपयोगकर्ता नाम प्राप्त करने के लिए का उपयोग कर सकते हैं, यदि आप प्रमाणीकरण के साथ HTTP का उपयोग करते हैं, तो आप इसका उपयोग कर सकते हैं उपयोगकर्ता नाम प्राप्त करने के लिए आपका वेबसर्वर, लेकिन गिट नेटवर्किंग प्रोटोकॉल किसी भी उपयोगकर्ता नाम संचारित नहीं करते हैं।
धन्यवाद। मैं उन हुक के बारे में भूल गया। – takeshin
हुक के लिंक अब टूटा हुआ है। –
@AlexanderGladysh लिंक अब तय किया जाना चाहिए। –