2015-04-19 7 views
7

मेरे वर्तमान आदेशGit क्लोन जाना

git clone ssh://[email protected]/srv/git/repo 
कि

password 

... ठीक, अच्छा काम करता है के बाद

है।

अब मैं इसे एक पंक्ति में करना चाहता हूं। ऐसा ही कुछ:

git clone ssh://username:[email protected]/srv/git/repo 

लेकिन यह `काम नहीं कर रहा है और मुझे संदेश देता है:

Please make sure you have the correct access rights and the repository exists. 

मैं एक पंक्ति में कैसे क्लोन कर सकते हैं?

+0

क्या आपने http –

उत्तर

18

इसके बजाय आप http यूआरएल उपयोग करने के लिए यह क्लोन करने के लिए सक्षम होना चाहिए:

git clone http://username:[email protected]/srv/git/repo.git 

संपादित: यदि आप केवल उपयोगकर्ता नाम-पासवर्ड के साथ सामान्य ssh करके ऐसा कर सकते

तो मामले में साख की तरह sshpass प्रयोग करके देखें:

sshpass -p password git clone ssh://[email protected]/srv/git/repo 

आप इसके लिए sshpass इंस्टॉल करना पड़ सकता है।

ध्यान दें कि यह वह मामला है जब ssh कुंजी सही ढंग से कॉन्फ़िगर नहीं की जाती हैं; अगर एसएसएच कुंजी कॉन्फ़िगर की गई थी, तो आपकी सार्वजनिक कुंजी को लक्ष्य सर्वर के साथ साझा किया जाएगा और आपको पासवर्ड दर्ज करने की आवश्यकता नहीं होगी (हालांकि आपको पासफ्रेज दर्ज करना पड़ सकता है)।

+0

का उपयोग करने का प्रयास किया "मान्य नहीं: क्या यह एक गिट भंडार है?" मुझे एसएसएच का उपयोग करके ऐसा करना है। – andrew

+1

क्या आप इसे sshkeys द्वारा एक्सेस कर रहे हैं, या सामान्य उपयोगकर्ता नाम-पासवर्ड आधारित एसएसएच प्रमाणीकरण द्वारा? यदि यह पहला है, तो पासवर्ड के बिना यह संभव होगा, लेकिन अन्यथा आप sshpass का उपयोग करने का प्रयास कर सकते हैं (हालांकि मुझे सटीक कमांड का यकीन नहीं है)। 'Sshpass -p पासवर्ड गिट क्लोन एसएसएच: // उपयोगकर्ता नाम @ onboard.com/srv/git/repo' –

+0

जैसे कुछ कोशिश करें sshpass पैकेट स्थापित करने की आवश्यकता है। यह कोई समस्या नहीं है। – andrew

संबंधित मुद्दे