होम·एरर संदेश

ssh · Git

संदेश

git@github.com: Permission denied (publickey).

इसका मतलब

ssh सर्वर तक पहुँच गया, पर उसने ऐसी कोई कुंजी पेश नहीं की जिसे सर्वर स्वीकार करे — यह प्रमाणीकरण की बात है, network की नहीं। ऐसा तब होता है जब आपने कुंजी बनाई ही न हो, या बनाई हो पर ssh-agent में डाली न हो, या सार्वजनिक कुंजी उस सेवा के आपके खाते में दर्ज न हो। ssh-add ~/.ssh/id_ed25519 इस सत्र भर के लिए कुंजी को agent में डाल देता है, और ssh -T git@github.com बताता है कि कौन-सी कुंजी आज़माई गई और आपको किस रूप में पहचाना जा रहा है। दोनों command केवल पढ़ते हैं; खोने को कुछ नहीं।

सुधार

ssh-add ~/.ssh/id_ed25519
कौन देता है
ssh
Git
29

git की लगभग हर त्रुटि एक इनकार होती है जिसका अर्थ है "इस स्थिति से वह काम करने पर कुछ खो जाएगा"; fatal: का मतलब है कि git ने कुछ भी बदले बिना रुक गया, और पहली पंक्ति के नीचे की hint: पंक्तियों में असली उपाय होता है।

एरर संदेश कैसे पढ़ें

  • पहली पंक्ति से पढ़ें। जितना नीचे जाएँगे उतना वह औज़ार के भीतर की बात है; कारण आम तौर पर सबसे ऊपर लिखा होता है।
  • फ़ाइल का नाम और पंक्ति संख्या दिखे तो वहीं से शुरू करें — stack का सबसे ऊपरी frame नहीं, बल्कि वह सबसे ऊपरी पंक्ति जिसमें आपकी लिखी फ़ाइल का नाम हो।
  • संदेश को जैसा है वैसा खोजें, पर पहले अपने paths और variable नाम हटा दें — वही खोज को अटकाते हैं।
  • वही स्थिति औज़ार के हर संस्करण में अलग शब्दों में आती है। नतीजे बेमेल लगें तो संस्करण संख्या भी जोड़ें।
  • कोई सुधार चिपकाने से पहले देख लें कि वह क्या फेंक देगा। इनमें कुछ पलटे नहीं जा सकते।

अक्सर पूछे जाने वाले सवाल

Q. “git@github.com: Permission denied (publickey).” का क्या मतलब है?

ssh सर्वर तक पहुँच गया, पर उसने ऐसी कोई कुंजी पेश नहीं की जिसे सर्वर स्वीकार करे — यह प्रमाणीकरण की बात है, network की नहीं। ऐसा तब होता है जब आपने कुंजी बनाई ही न हो, या बनाई हो पर ssh-agent में डाली न हो, या सार्वजनिक कुंजी उस सेवा के आपके खाते में दर्ज न हो। ssh-add ~/.ssh/id_ed25519 इस सत्र भर के लिए कुंजी को agent में डाल देता है, और ssh -T git@github.com बताता है कि कौन-सी कुंजी आज़माई गई और आपको किस रूप में पहचाना जा रहा है। दोनों command केवल पढ़ते हैं; खोने को कुछ नहीं।

Q. इसे कैसे ठीक करें?

ssh-add ~/.ssh/id_ed25519 — चलाने से पहले ऊपर देख लें कि यह कमांड क्या फेंक देता है।

Q. यह कौन-सा औज़ार देता है?

ssh। यह Git में आता है, और संदेश 4 शब्दों का है।

साथ आने वाले एरर