सवाल मैं कैसे सुनिश्चित करूं कि गिट मुझे मेरे गिटहब उपयोगकर्ता नाम और पासवर्ड के लिए नहीं पूछता है?


मैं गिटहब पर रेपो के साथ काम कर रहा हूं और हर बार जब मैं कुछ धक्का देने की कोशिश करता हूं, तो यह मेरे गिटहब उपयोगकर्ता नाम और पासवर्ड के लिए पूछता है। मैं नहीं चाहता कि यह कर रहा हो।

मैंने निर्देशों की कोशिश की गिट में अपना ईमेल सेट करना, अर्थात् गिट वैरिएबल github.user और github.token सेट अप किया है, लेकिन इससे कोई फर्क नहीं पड़ता।

मुझे समझ में नहीं आता कि यह क्यों हो रहा है।


159
2017-10-14 17:17


मूल


आपको पासवर्ड कैश करने की आवश्यकता है: help.github.com/articles/set-up-git#password-caching - Piotr Usewicz


जवाब:


आपको एक एसएसएच-एजेंट सेट अप करने की आवश्यकता है जिसके खिलाफ आपको केवल एक बार प्रमाणित करने की आवश्यकता है। देख यह जवाब एक के लिए एसओ पर खत्म हो गया।


27
2017-10-14 17:28



लेकिन यह समाधान एसएसएच-पारिवारिक वाक्यांशों के लिए है। समस्या यह है कि गिट "गिट पुश" का उपयोग करता है जो एसएस-एजेंट को ट्रिगर नहीं करता है, मुझे लगता है। (मैंने पहले ही यह किया है, इसलिए मुझे पता है कि यह काम नहीं करता है।) - picardo
@ पिकार्डो: मैंने यह किया है, और यह वास्तव में काम करता है। - Daenyth


आज भी इसी तरह की समस्या थी: मैंने अपनी कामकाजी प्रतिलिपि में चीजों को गड़बड़ कर दिया, इसलिए मैंने निर्देशिका का नाम बदलने और गिटूब से फिर से अपनी परियोजना को क्लोन करने का फैसला किया। लेकिन ऐसा करने के बाद, मुझे पासफ्रेज़ में प्रवेश करने के बजाए किसी भी पुल / पुश अनुरोध करने के लिए अपना पासवर्ड दर्ज करना पड़ा, जैसा कि मैंने किया था।

ऐसा इसलिए था क्योंकि आज मैंने परियोजना को क्लोन करने के लिए https प्रोटोकॉल का उपयोग किया था! यह जांचने के लिए कि आप किस प्रोटोकॉल का उपयोग कर रहे हैं बस चलाएं

git config -l

और 'remote.origin.url' से शुरू होने वाली रेखा को देखें।

प्रोटोकॉल स्विच करने के लिए:

git config remote.origin.url git@github.com:the_repository_username/your_project.git

the_repository_username तथा your_project उचित भंडार नाम और उस भंडार के मालिक के साथ प्रतिस्थापित किया जाना चाहिए। यदि आपके पास रिपोजिटरी है, या रिपोजिटरी स्वामी का उपयोगकर्ता नाम अन्यथा उपयोगकर्ता नाम आपका होगा।


205
2017-08-08 22:36



यह मेरे लिए काम किया। एक बात यह है कि यूआरएल में मेरा उपयोगकर्ता नाम नहीं है लेकिन रेपो पता जैसा कि यह गिथब पर दिखाई देता है: git@github.com:some-user/repo-name.git - B Seven
नोट: Google ने मुझे यहां लाया। मैने िकया remote.origin.url https विधि पर सेट करें और यहां तक ​​कि यह भी ध्यान नहीं दिया था https बनाम ssh तरीकों। इस यूआरएल ने मुझे स्पष्ट देखने में मदद की: help.github.com/articles/... - Chris K
पासवर्ड दर्ज करने का कोई तरीका है? - zishe
गिट ज्ञान वाले लोगों के लिए क्यू: बीच कोई अंतर (या वरीयता) git config remote.origin.url ... ऊपर इस्तेमाल किया, बनाम। git remote set-url origin ...? - Daryn
मैं समझ नहीं पाया कि इस तरह की गलत उत्पत्ति को कैसे हटाया जाए। उत्तर है: git remote rm origin - Vacilando


यदि आप एसएसएच के बजाय HTTPS का उपयोग कर रहे हैं, तो आप इसका अनुसरण कर सकते हैं:

  1. अपने रिमोट यूआरएल (remote.origin.url) के साथ खोजें

    git config -l
    

    Sergio Morstabilini के लिए धन्यवाद

  2. आपका रिमोट यूआरएल इस तरह होगा: https: // {USERNAME} @ github.com / {USERNAME} / {REPONAME} .git

  3. इस आदेश का निष्पादन करें:

    git config remote.origin.url https://{USERNAME}:{PASSWORD}@github.com/{USERNAME}/{REPONAME}.git
    

28
2017-12-03 22:40



मेरे उपयोगकर्ता नाम में शामिल है @, मेरे लिए काम नहीं किया। - coding_idiot
लेकिन अगर ऐसा नहीं होता है (आपको अपने ईमेल का उपयोग करने की आवश्यकता नहीं है) यह पूरी तरह से काम करता है! धन्यवाद। - Killah
यदि आपके उपयोगकर्ता नाम में @ शामिल है, तो आपको इसे URL-एन्कोड करने की आवश्यकता है। meyerweb.com/eric/tools/dencoder - Tim Bodeit
सुरक्षा कारणों से आपको अपना पासवर्ड छोड़ देना चाहिए। - zygimantus
सावधान रहें, पासवर्ड को सादे पाठ में अंदर रखा जाएगा .git/config फाइल! - Amro


मैं HTTPS का उपयोग करना पसंद करता हूं, मुझे एसएसएच कुंजी सेट करने से आसान और अधिक सुरक्षित लगता है।

एचटीटीपीएस का उपयोग करके, आप गिटब रिमोट्स के लिए अपना उपयोगकर्ता नाम पूछने से गिट को निम्नलिखित से रोक सकते हैं:

git config --global url."https://yourusername@github.com".insteadOf "https://github.com"

और आप कम से कम आवृत्ति गिट को अपने पासवर्ड के लिए पूछ सकते हैं:

git config --global credential.helper 'cache --timeout=28800'

जहां 28800 8 घंटे हैं। जब मैं अपना कामकाजी दिन शुरू करता हूं, तो मैं केवल एक बार अपना पासवर्ड दर्ज करने के लिए इस सेटअप का उपयोग करता हूं।

उसके बाद आपके अंदर इन प्रविष्टियां होंगी ~/.gitconfig

[url "https://yourusername@github.com"]
    insteadOf = https://github.com

[credential]
    helper = cache --timeout=28800

स्रोत:

http://git-scm.com/docs/git-credential-cache

http://git-scm.com/docs/git-config


25
2017-11-21 04:27



इसने एक जादू की तरह काम किया। धन्यवाद। - david euler


यदि आप एचटीटीपीएस का उपयोग कर विंडोज पर हैं, तो कोशिश करें गिट प्रमाण पत्र स्टोर - यह आपका नाम और पासवर्ड रखने के लिए विंडोज क्रेडेंशियल स्टोर का उपयोग करता है।

Windows Credential Store for Git
This application is a small helper app designed to follow the 
git credentials API as defined by the Git Documentation.

Installation
1. Download the git-credential-winstore.exe application
2. Run it! If you have GIT in your PATH, it should just work.

फिर अगली बार जब आप अपना नाम और पासवर्ड दर्ज करेंगे तो यह उन्हें आपके लिए याद रखेगा।


6
2018-02-23 11:54



धन्यवाद। परियोजना का नाम बदल दिया गया था Git-क्रेडेंशियल-प्रबंधक के लिए विंडोज। - Michael S.


जब आप github के लिए एक ssh कुंजी सेट करते हैं, यदि यह आपकी डिफ़ॉल्ट कुंजी नहीं है, तो आपको अपने लिए एक सेक्शन जोड़ना होगा ~/.ssh/config

Host *github.com
    User git
    IdentityFile ~/.ssh/github_id_rsa

5
2017-10-14 19:45





साथ ही, यदि आप हर बार अपने पासवर्ड के लिए संकेत देना चाहते हैं, लेकिन सिर्फ अपना उपयोगकर्ता नाम नहीं है, तो आप उपयोगकर्ता नाम के साथ रिमोट को HTTPS के रूप में कॉन्फ़िगर करते हैं .. इस तरह ..

git config remote.origin.url https://USERNAME@github.com/repo_owner/repo_name

इसके बाद, आपको हर बार अपने पासवर्ड के लिए संकेत मिलेगा, लेकिन आपका उपयोगकर्ता नाम नहीं।

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


5
2017-08-11 03:17