2011-05-24 16 views
41

के लिए लंबे पासफ्रेज दर्ज करें हर बार जब मैं गिटहब को कुछ भी धक्का देने की कोशिश करता हूं तो यह मुझे पता [email protected]:... से पूछता है और उसके बाद यह पासफ्रेज चाहता है। क्या इसे स्वचालित करने का कोई तरीका है?गिट प्रत्येक पुश

मैं लिनक्स उबंटू का उपयोग कर रहा हूं।

+0

हमें कुछ और जानकारी दें: क्या आपने जिथब को रिमोट के रूप में जोड़ा है? आप वास्तव में 'गिट पुश' कैसे कहते हैं? आदेश का सटीक आउटपुट क्या है? – eckes

उत्तर

85

आप अपने पासफ्रेज को याद रखने के लिए ssh-agent का उपयोग कर सकते हैं (जीनोम स्वचालित रूप से आपके लिए यह सामान्य रूप से चलाता है ...)।

$ ssh-agent bash 
$ ssh-add 
Enter passphrase for /home/elyobo/.ssh/id_rsa: 
Identity added: /home/elyobo/.ssh/id_rsa (/home/elyobo/.ssh/id_rsa) 

अब से, टर्मिनल के भीतर से आप इसे चलाते हैं, तो आपका पास वाक्यांश याद किया जाएगा।

आदर्श रूप से आप इसे स्वचालित रूप से काम कर पाएंगे, इसलिए gnome के भीतर चल रहे सभी गोले काम करेंगे; Gnome Keyring देखें।

+0

मैं किसी भी जीयूआई का उपयोग नहीं कर रहा हूं। बस टर्मिनल। मैं उबंटू सर्वर का उपयोग कर रहा हूँ। आपका कोड वास्तव में काम करता है। अब समस्या यह है कि मुझे फिर से टाइप करने की आवश्यकता है: [email protected]: उपयोगकर्ता नाम/... .git क्या कोई समाधान है? – jnbdz

+1

आह, हाँ, एक सर्वर के साथ आपको उपर्युक्त करने की आवश्यकता होगी। हालांकि, अगर आप अपनी स्थानीय मशीन पर कुंजी के साथ रिपॉजिटरी तक पहुंच सकते हैं तो आप कुंजी को अग्रेषित करने के लिए 'ssh -A' का उपयोग कर सकते हैं (मैन पेज देखें) और पासफ्रेज को संभालने के लिए अपने डेस्कटॉप पर एसएसएच-एजेंट का उपयोग करें, यह आपको कुछ प्रयास बचाएगा (और यदि आप उन्हें खोल चुके हैं तो कई टर्मिनलों में काम करेंगे)। मैंने सोचा होगा कि आप केवल 'गिट पुश' या कुछ चला सकते हैं, लेकिन मैं गिट से बहुत परिचित नहीं हूं, बस एसएसएच :) –

+0

एसएसएच एजेंट अग्रेषण की जांच करें, कई सिस्टमों में कुंजी प्रबंधित करने का कोई कारण नहीं है, आप एसएसएच- में प्रवेश – Tekkub

1

ऐसा इसलिए है क्योंकि आप HTTPS (https://github.com/felipelalli/private.git जैसे कुछ) के बजाय एसएसएच ([email protected]: felipelalli/private.git) की तरह कुछ उपयोग कर रहे हैं।

यदि आप SSH क्लोन और फिर अपने मशीन शोध करे चरणों का पालन अधिकृत करने के लिए की जरूरत है: https://help.github.com/articles/generating-ssh-keys

0

प्रमाणीकरण एजेंट को अपने निजी पहचान जोड़ने के लिए ssh-agent और ssh-add आदेशों का उपयोग करने का एक और तरीका।

$ eval "$(ssh-agent -s)" 
Agent pid 1174 
$ ssh-add ~/.ssh/id_rsa 
Enter passphrase for /home/james/.ssh/id_rsa: 
Identity added: /home/james/.ssh/id_rsa (/home/james/.ssh/id_rsa) 
संबंधित मुद्दे