त्रुटि "आपका धक्का एक निजी ईमेल पता प्रकाशित करेगा"


110

मैं GitHub / VCS के लिए बहुत नया हूं ।

जब मैं GitHub पर अपनी परियोजना साझा करने का प्रयास करता हूं, तो मुझे निम्न त्रुटि संदेश मिलता है।

    Can't finish GitHub sharing process
    Successfully created project 'myproject' on GitHub, but initial push failed:
    remote: error: GH007: Your push would publish a private email address.
    failed to push some refs to 'https://github.com/me/myproject.git'

मैंने त्रुटि संदेश को देख लिया है और मुझे कोई हिट नहीं मिली है। मैंने स्टैक एक्सचेंज भी खोजा है, लेकिन कोई सिगार नहीं। कैसे मैं इस मुद्दे को हल कर सकता हूँ?

जवाबों:


66

मैंने उसी error: GH007संदेश का अनुभव किया और समस्या को हल करने के लिए निम्नलिखित का उपयोग किया।

  1. अपना प्रतिबद्ध ईमेल पता सेट करने पर जाएं ।
  2. का पालन करें अपने कंप्यूटर पर हर भंडार के लिए सेट करना अपना ईमेल पता
  3. अपना GitHub खाता खोलें, और सेटिंगईमेल पर जाएं
  4. का चयन करें मेरा ईमेल पता निजी रखें चेक बॉक्स।
  5. ब्लॉक कमांड लाइन को अचयनित करें जो मेरे ईमेल चेक बॉक्स को उजागर करती है

हालांकि यह आपके ईमेल पते को उजागर कर सकता है।


24
यह एक समाधान है लेकिन वास्तव में आपके ईमेल पते को उजागर कर सकता है। यदि आपके पास ऐसा कोई कमिट है जिसे अभी तक पुश नहीं किया गया है, तो आपको ब्लॉक कमांड लाइन को अनचेक करने की आवश्यकता होगी जो मेरे ईमेल को उजागर करती है। फिर आप उन लंबित कामों को आगे बढ़ा सकते हैं। बाद में, अपने ईमेल पते को बिना उत्तर के ईमेल पते पर अपडेट करें और ब्लॉक कमांड लाइन को चेक करें जो आपके पते को निजी रखने के लिए मेरे ईमेल को फिर से उजागर करता है
स्वेन ऑल्टरमैन

5
@SvenAelterman update your email address to the no-reply email addressकहाँ? Github सेटिंग्स या अपने स्थानीय मशीन पर कहीं ऐसा है जो संभवतः आपके निजी ईमेल पते को भेज / उपयोग कर रहा है? यह मुझे प्रतिवाद के रूप में मारता है कि मुझे जीथब द्वारा उत्पन्न ईमेल पते को सीधे कॉपी और पेस्ट करने के लिए कहा जा सकता है बल्कि सीधे चेकबॉक्स पर क्लिक करना चाहिए, इसलिए मुझे लगता है कि पढ़ना गलत है। या यह है??
हिप्पिएट्रैल

15
अपने नवीनतम प्रतिबद्ध उपयोग के लिए ईमेल बदलने के लिएgit commit --amend --author="Author Name <email@address.com>"
dspacejs

9
यहाँ बेहतर समाधान का उपयोग करने के लिए @Winfried है । आपके ईमेल पते को सार्वजनिक रूप से उजागर नहीं करेंगे
कॉनर

8
सहमति, सही उत्तर @ Winfried के है stackoverflow.com/a/51097104/7872793
शेन

230

"ब्लॉक कमांड लाइन जो मेरे ईमेल को उजागर करता है" सुविधा को सक्षम करते समय, आप अपने नो-उत्तर ईमेल पते का उपयोग करने के लिए गिट को कॉन्फ़िगर करना चाहते हैं। चिंता न करें - यह आपके योगदान ग्राफ को प्रभावित नहीं करेगा। सभी कमिट अभी भी आपके खाते से जुड़े रहेंगे।

  1. टर्मिनल खोलें।

  2. वर्तमान कार्यशील निर्देशिका को स्थानीय रिपॉजिटरी में बदलें जहाँ आप उस ईमेल पते को कॉन्फ़िगर करना चाहते हैं जिसे आप अपने गिट कमिट से जोड़ते हैं।

  3. अपने GitHub की व्यक्तिगत सेटिंग्स → ईमेल में अपने GitHub का पता लगाएं । यह मेरा ईमेल पता निजी चेकबॉक्स रखें के विवरण में उल्लिखित है । आमतौर पर, यह एक विशिष्ट पहचानकर्ता, और आपके उपयोगकर्ता नाम के साथ शुरू होता है।

  4. Git में एक ईमेल पता सेट करें। अपने GitHub द्वारा प्रदान किए गए नो-उत्तर ईमेल पते का उपयोग करें।

    • आपके कंप्यूटर पर प्रत्येक रिपॉजिटरी के लिए अपना ईमेल पता सेट करना

      git config --global user.email "{ID}+{username}@users.noreply.github.com"
      
    • एकल रिपॉजिटरी के लिए अपना ईमेल पता सेट करना

      git config user.email "{ID}+{username}@users.noreply.github.com"
      
  5. अपनी अंतिम प्रतिबद्ध पर लेखक की जानकारी रीसेट करें:

    git commit --amend --reset-author
    

    यदि आपके पास अपने निजी ई-मेल पते के साथ कई कमेंट्स हैं, तो यह उत्तर देखें ।

  6. अब आप कमेंट को noreply ई-मेल पते के साथ पुश कर सकते हैं, और भविष्य के कमेंट्स में noreply ई-मेल एड्रेस भी होगा।

    git push
    

एक बार जब आप Git को कॉन्फ़िगर करते हैं, तो कमिट्स आपके वैकल्पिक "नॉरप्ली" ईमेल पते का उपयोग करेगा, और कोई भी धक्का जिसे अस्वीकार नहीं किया जाएगा।


28
यह स्वीकृत उत्तर होना चाहिए। @ सोफिया-फ़र्नान्डेज़ उत्तर ईमेल पतों को उजागर कर सकता है। क्या कोई तरीका है जिससे आप इसे थोड़ा कम और अधिक पठनीय बना सकते हैं? आपके पास दो प्रमुख खंड हैं जहां एकमात्र अंतर --globalध्वज है
कॉनर

मुझे लिनक्स इंटरफ़ेस से कुछ परेशानी थी (सोर्सट्री टर्मिनल का इस्तेमाल किया और मुझे VI का उपयोग किए हुए कुछ समय हो गया है), आप जोड़ सकते हैं -m <comment>यदि आप इससे बचना चाहते हैं।
माइकएल

2

आपने संभवतः GitHub की ईमेल गोपनीयता सुविधा को सक्षम किया है (या अब वह डिफ़ॉल्ट रूप से सक्षम है)।

यह GitHub की मदद से इस पेज पर विस्तृत है ।

संक्षेप में, एक टॉगल है जिसे आप सक्षम कर सकते हैं (जो आपके खाते में सक्षम है) जो किसी भी धक्का को रोकता है जहां उपयोगकर्ता आपका ईमेल पता है। आप इसके बजाय एक अनाम पते का उपयोग कर सकते हैं (या सुविधा को अक्षम करने के लिए चुनें)।

दोनों विकल्पों के लिए विवरण एक ही पृष्ठ पर उपलब्ध हैं ।


धन्यवाद! मैंने अपना ईमेल ऐड्रेस गुमनाम कर दिया और इस मुद्दे को हल कर दिया!
user156060

अज्ञात ईमेल पते का उपयोग करना एक अच्छा समाधान है। यदि आपने इसे 18 जुलाई, 2017 से पहले बनाया है, तो आप इसे 7 यादृच्छिक अंकों को जोड़ने के लिए फिर से करना चाह सकते हैं।
स्वेलेल्टरमैन


0
  1. के लिए जाओ Settings
  2. पर क्लिक करें Emails। नीचे तक स्क्रॉल करें। Keep my email addresses privateसेक्शन होगा।
  3. वहाँ पर उल्लिखित सार्वजनिक ईमेल आईडी पर ध्यान दें।
  4. निम्न आदेश का उपयोग करके पिछले चरण में उल्लिखित सार्वजनिक ईमेल आईडी के साथ अपनी स्थानीय वैश्विक ईमेल आईडी को रीसेट करें।
$ git config — global user.email "<user_email_id>"
  1. अपनी पिछली स्थानीय प्रतिबद्धता को वापस करें जो अवरुद्ध हो रही थी।
$ git reset --soft HEAD~1 
  1. नए सिरे से प्रतिबद्ध करें और इसे आगे बढ़ाएं। यह काम करेगा।

-2

मेरी भी यही समस्या थी। नीचे दिए गए चित्र में मेरा समाधान है:

GitHub सेटिंग्स


7
आप अपना ईमेल प्रकाशित करने के लिए तैयार हैं, सभी खुरचने के लिए खुला है और इस तरह, लेकिन फिर आप इसे वहाँ से बाहर कर देते हैं
लेस्तो

यह स्वीकृत उत्तर (लगभग एक वर्ष पूर्व पोस्ट) से कैसे भिन्न है?
पीटर मोर्टेंसन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.