गिटहब संदेश का अर्थ: ईमेल गोपनीयता प्रतिबंधों के कारण धक्का में गिरावट आई है


201

मैंने स्वीकार किया है और जीथब पर एक पुल अनुरोध को मर्ज किया है, और अब मैं अपने कमिट्स को और नहीं खींच सकता।

संदेश है:

! [remote rejected] master -> master (push declined due to email privacy restrictions)
error: failed to push some refs to 'git@github.com:FranckFreiburger/vue-resize-sensor.git'


git did not exit cleanly (exit code 1) (3838 ms @ 12/04/2017 21:23:11)

अब मुझे क्या करना चाहिए ?


1
मुझे प्रलेखन पृष्ठ मिला: help.github.com/en/github/…
सेबेस्टियन नॉर

जवाबों:


398

दूरस्थ रिपॉजिटरी को आपके द्वारा ई-मेल पते को प्रकट करने वाली कमिट को धकेलने के लिए कॉन्फ़िगर किया गया है। उदाहरण के लिए GitHub में आपने ब्लॉक कमांड लाइन पुश की जाँच की है जो इसे सक्षम करने के लिए मेरे ईमेल चेकबॉक्स को उजागर करता है

ब्लॉक कमांड लाइन मेरे ईमेल को उजागर करती है

जब आप निश्चित रूप से उस सेटिंग को अनचेक कर सकते हैं, तो यह आपके निजी ई-मेल पते को दुनिया में हर किसी के लिए उजागर कर देगा, क्योंकि लेखक की जानकारी आपके रिपॉजिटरी तक पहुंच के साथ किसी के द्वारा पढ़ने योग्य है।

इसके बजाय, यह करें:

  1. आप अपना व्यक्तिगत ई-मेल पता देख सकते हैं, जिसका उपयोग डिफ़ॉल्ट रूप से आपके कमिट के लिए Git में किया जाता है:

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

    {ID}+{username}@users.noreply.github.com

    मेरा ईमेल पता निजी रखें

  3. वैश्विक उपयोगकर्ता ई-मेल पता सेटिंग को बदलकर अपना GitHub हो सकता है:

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

    git commit --amend --reset-author

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

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

    git push

4
नहीं, यह मेरी तरफ एक आकर्षण की तरह काम करता है, शायद आप एक कदम भूल गए, @adamczi। यह स्वीकृत उत्तर होना चाहिए, क्योंकि यह दोनों संभावित समाधान बताता है।
आयोना

4
धन्यवाद, लगता है कि मैंने चरण 2 में एक त्रुटि की हो सकती है। ध्यान देने योग्य बात यह है कि आपको स्पष्ट रूप से @ वर्टिंकल के निर्देशों का पालन करना चाहिए, क्योंकि ई-मेल को अन्य <your_uname>@users.noreply.github.com(जैसे स्वयं को सेट करना None) सेट करने के परिणामस्वरूप आपका कमिट नहीं दिखाई देगा। आपके प्रोफाइल पेज पर ग्राफ।
adamczi

3
मुझे एक ऐसी ही रहस्यमय समस्या थी। मेरी गलती थी git commit --amend --author "first last me@users.noreply.github.com"और ऐसा प्रतीत नहीं हुआ। आपको वास्तवuser.email में ऊपर के रूप में कॉन्फ़िगरेशन पैरामीटर को रीसेट करने की आवश्यकता है । चीयर्स!
msanford

6
चरण 4 जो कि ऊपर दिए गए वर्टिंकल ने प्रदान किया है, मेरे लिए यह त्रुटि थी। मैंने अपने नो-उत्तर ईमेल पते का उपयोग करने के लिए कॉन्फ़िगर में user.email को सेट किया था, लेकिन पुश कमांड ने फिर भी एक निजी ईमेल प्रकाशित करने के बारे में निराशाजनक त्रुटि वापस कर दी। एक बार जब मैंने प्रतिबद्ध किया तो मैं धक्का देने की कोशिश कर रहा था, तब उसने धक्का देने की अनुमति दी।
चायवाला

3
आप केवल एकल रिपॉजिटरी के लिए ईमेल पता बदलना चाह सकते हैं। यह उत्तर मददगार था, लेकिन मुझे जीथब की मदद के लेख का भी उल्लेख करना था: एकल रिपॉजिटरी के लिए अपना ईमेल पता सेट करना
gfullam

146

यह एक नई GitHub सेटिंग के कारण होता है कमांड लाइन को ब्लॉक करती है जो आपके ईमेल पते को उजागर करती है।

अपनी ईमेल सेटिंग में "ब्लॉक कमांड लाइन पुश माई ईमेल" एक्सपोज़ माय बॉक्स "को अनचेक करने की कोशिश करें और फिर दोबारा पुश करें।


20
इस विकल्प को अनचेक करने से मेरा निजी ईमेल पता उजागर हो जाएगा?
फ्रेंक फ्रीबर्गर

14
हां, यह वही होगा जो आप पहले से ही अपने ईमेल पते को उजागर कर चुके हैं, यदि आपने अपने रिपॉजिटरी में कमिट किया है। भले ही गितुब आपके ईमेल पते को नहीं दिखाएगा, अगर मैं आपके रिपॉजिटरी को क्लोन करता हूं तो मैं उन्हें बस एक ही देख सकता हूं, और यही वह नई रोकथाम-पुश चीज़ को रोक देगा।
लास वी। कार्लसन

10
यह एक विचारणीय समाधान है। कम से कम उल्लेख करें कि यह आपके ईमेल पते को पूरी दुनिया के सामने लाएगा।
कोवैक


1

मैंने त्रुटियों को हल किया:

git config --global user.email ""

यह सिर्फ मेरे ईमेल को रिक्त (एक रिक्त स्ट्रिंग) के लिए सेट करता है। अब मैंने अपना ईमेल अलग-अलग प्रोजेक्ट्स में सेट किया है:

git config user.email "myemail@domain.com"


0
  1. बस github.com पर जाएं और अपनी प्रोफ़ाइल पर क्लिक करें
  2. सेटिंग्स में जाओ
  3. अब बाएं नेविगेशन पैनल पर 'ईमेल' पर क्लिक करें
  4. और 'मेरे ईमेल पते निजी रखें' क्षेत्र के लिए खोज
  5. कृपया इस विकल्प को अनचेक करें
  6. अब कृपया फिर से जाँच करें और मुझे लगता है कि आपकी समस्या अब हल हो गई है।

2
यह काम करेगा लेकिन यह आपके निजी ईमेल पते को उजागर करेगा। यदि आप गोपनीयता के बारे में चिंतित हैं तो अन्य समाधान देखें।
kaznovac

-1

ब्लॉकचेक कमांड लाइन को अनचेक करें जो मेरे ईमेल को उजागर करती है और फिर कमांड लाइन से कोड को पुश करने का प्रयास करें।


एक ही बात लागू पता है?
LOG_TAG

यह काम करेगा लेकिन यह आपके निजी ईमेल पते को उजागर करेगा। यदि आप गोपनीयता के बारे में चिंतित हैं तो अन्य समाधान देखें।
kaznovac

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