क्या किसी को GitHub ईमेल कमिट करने का एक तरीका पता है / जिसमें कमिटमेंट की पूरी जानकारी शामिल है?
मुझे ईमेल सेवा हुक के बारे में पता है, लेकिन यह अंतर नहीं भेजता है।
क्या किसी को GitHub ईमेल कमिट करने का एक तरीका पता है / जिसमें कमिटमेंट की पूरी जानकारी शामिल है?
मुझे ईमेल सेवा हुक के बारे में पता है, लेकिन यह अंतर नहीं भेजता है।
जवाबों:
इस समय, ऐसा करने का कोई तरीका नहीं है जिसे आप केवल GitHub का उपयोग करना चाहते हैं। जैसा कि /programming/4211107/how-to-get-email-diffs-for-github-pushes में उल्लेख किया गया है , GsHub के भीतर ई-मेल सहित ईमेल भेजने के लिए कोई समर्थन नहीं है। इस बारे में पूछने वाले दो गिटहब मुद्दे उठाए गए हैं - http://github.com/github/github-services/issues/86 (बंद) और http://github.com/github/github-services/issues/149 लेकिन हालांकि वे कहते हैं कि यह कुछ ऐसा है जिसे वे भविष्य में लागू कर सकते हैं, कोई संकेत नहीं है कि ऐसा होगा।
कहा कि, यदि आप अपना स्वयं का (स्थानीय या क्लाउड होस्ट किया गया है, लेकिन स्क्रिप्टिंग के साथ) वेब या ई-मेल सर्वर को git रिपॉजिटरी के साथ चलाने के लिए तैयार हैं, तो आप GitHub पोस्ट-प्राप्त सूचनाओं ( http: //help.github) का उपयोग करके इसे स्वयं बना सकते हैं। .com / लेख / उत्तर प्राप्त-हुक) आपके वेब सर्वर पर भेजा जाता है, या सामान्य (भिन्न के बिना) ई-मेल सूचनाएं आपके ई-मेल सर्वर पर एक विशेष पते पर भेजी जाती हैं। वेब और ई-मेल अधिसूचना के बीच चुनाव आपके सर्वर को कहां और कैसे होस्ट कर रहा है, इसके आधार पर किया जाएगा - यदि आपके पास अच्छी कनेक्टिविटी और विश्वसनीयता है, तो वेब सूचनाओं में सबसे कम विलंबता होगी, लेकिन यदि आपका वेब-सर्वर किसी भी कारण से उपलब्ध नहीं है, तो जब तक आपका वेब सर्वर उपलब्ध नहीं होता है, तब तक आपको एक अधिसूचना नहीं मिलेगी; ई-मेल का उपयोग करने से पूरी प्रक्रिया में देरी होगी, लेकिन बेहतर हो सकता है यदि आप इसे घर पर होस्ट कर रहे हैं, और विशेष रूप से किसी भी मशीन के लिए जो हमेशा चालू नहीं होती है।
किसी भी स्थिति में, आपको एक स्क्रिप्ट लिखनी होगी जो (ई-मेल या वेब / JSON) सूचना लेती है और GitHub से संबंधित रिपॉजिटरी (रिपॉजिटरी) को एक स्थानीय रिपॉजिटरी में खींचती है, जहाँ आपको Git की आंतरिक पोस्ट सेट करनी होगी- http://github.com/jtek/git-hook-update-notify-email जैसे कुछ को चलाने के लिए हुक तंत्र प्राप्त करें (ऊपर दिए गए स्टैकओवरफ़्लो लेख में उल्लेख किया गया है) या यदि आप तैयार हैं और Py Py Pyon कोड को स्थापित करने और उपयोग करने में सक्षम हैं colorizer) शायद कुछ अच्छे लग रहे हैं जैसे http://blog.chomperstomp.com/making-git-show-post-receive-e-mails-as-an-html-color-formatted-diff/ ( https से / से लिंक किया गया : //stackoverflow.com/questions/3232270/git-post-receive-email-hook-to-show-an-html-formatted-color-diff/ )।
यह स्क्रिप्टिंग का एक सा काम है, और इसके लिए आपको वेब या ई-मेल सर्वर, लोकल-पुल स्क्रिप्ट को चलाने के लिए कुछ होस्टिंग अवसंरचना की आवश्यकता होती है, और फिर अलग-अलग ई-मेल को उत्पन्न करने के लिए स्थानीय पोस्ट-हुक प्राप्त होता है, लेकिन इसे एक दिन से भी कम समय में स्थापित करना संभव है।
यह संभव है कि प्रत्येक पुश पर गिट भिन्नता उत्पन्न हो और इसे गितुब क्रियाओं का उपयोग करके ईमेल के माध्यम से भेजें । यहाँ उदाहरण है
...
- name: Generate git diff since last push
run: |
# write raw git diff in file
git diff ${{ github.event.before }} ${{ github.sha }} > git.diff
# convert raw git diff to html
git diff ${{ github.event.before }} ${{ github.sha }} | bash ./.github/diff2html.sh > email-body.html
zip -r diff.zip git.diff email-body.html
- name: Send git diff mail
uses: dawidd6/action-send-mail@v2
with:
server_address: email-smtp.us-east-1.amazonaws.com
server_port: 465
username: ${{secrets.MAIL_USERNAME}}
password: ${{secrets.MAIL_PASSWORD}}
subject: Github Actions job result
# Read file contents as body:
body: file://email-body.html
to: pewogab762@wwrmails.com
from: Luke Skywalker <pewogab762@wwrmails.com>
# Optional content type (defaults to text/plain):
content_type: text/html
attachments: diff.zip
...
HTML पृष्ठ में कनवर्ट किए गए गिट भिन्न को यहां संग्रहीत किया गया है https://github.com/sturman/git-diff-email/blob/master/email-body-example.html
पूरा प्रोजेक्ट यहां संग्रहीत है https://github.com/sturman/git-diff-email/