user@host:path/to/repo
प्रारूप उपयोग ssh करने के लिए Git बताता में लॉग इन करने host
उपयोगकर्ता नाम के साथ user
। से git help clone
:
एक वैकल्पिक एससीपी-जैसे सिंटैक्स का उपयोग ssh प्रोटोकॉल के साथ भी किया जा सकता है:
[user@]host.xz:path/to/repo.git/
@
उपयोगकर्ता नाम से पहले का हिस्सा है, और प्रमाणीकरण विधि (पासवर्ड, सार्वजनिक कुंजी, आदि) ssh द्वारा निर्धारित की जाती है, Git से नहीं। Git के पास ssh के लिए पासवर्ड पास करने का कोई तरीका नहीं है, क्योंकि ssh रिमोट सर्वर के कॉन्फ़िगरेशन के आधार पर भी पासवर्ड का उपयोग नहीं कर सकता है।
उपयोग ssh-agent
से बचने टाइपिंग के लिए हर समय पासवर्ड
यदि आप अपना ssh पासवर्ड हर समय टाइप नहीं करना चाहते हैं, तो विशिष्ट समाधान यह है कि आप सार्वजनिक / निजी कुंजी जोड़ी बनाएं , सार्वजनिक ~/.ssh/authorized_keys
फाइल को रिमोट सर्वर पर रखें, और अपनी निजी कुंजी लोड करें ssh-agent
। इसके अलावा एक बार लॉगिन करने के लिए SSH के ऊपर Git कॉन्फ़िगर करना देखें , ssh कुंजी पासफ़्रेज़ पर GitHub का हेल्प पेज , gitolite का ssh डॉक्यूमेंटेशन और Heroku का ssh कीज़ डॉक्यूमेंटेशन ।
GitHub (या हरोकू या ...) में कई खातों के बीच चयन
यदि आपके पास GitHub या Heroku जैसी जगह पर कई खाते हैं, तो आपके पास कई ssh कुंजियाँ (कम से कम एक प्रति खाता) होंगी। आपको किस खाते में लॉग इन करना है, यह चुनने के लिए, आपको ssh को बताना होगा कि किस निजी कुंजी का उपयोग करना है ।
उदाहरण के लिए, मान लीजिए कि आपके पास दो GitHub खाते हैं: foo
और bar
। आपकी ssh कुंजी foo
है ~/.ssh/foo_github_id
और आपकी ssh कुंजी bar
है ~/.ssh/bar_github_id
। आप git@github.com:foo/foo.git
अपने foo
खाते के git@github.com:bar/bar.git
साथ और अपने साथ पहुंचना चाहते हैंbar
खाता। आप निम्नलिखित को अपने साथ जोड़ेंगे ~/.ssh/config
:
Host gh-foo
Hostname github.com
User git
IdentityFile ~/.ssh/foo_github_id
Host gh-bar
Hostname github.com
User git
IdentityFile ~/.ssh/bar_github_id
फिर आप दो रिपॉजिटरी को निम्नानुसार क्लोन करेंगे:
git clone gh-foo:foo/foo.git # logs in with account foo
git clone gh-bar:bar/bar.git # logs in with account bar
Ssh से पूरी तरह से बचना
कुछ सेवाएं HTTP एक्सेस को ssh के विकल्प के रूप में प्रदान करती हैं:
GitHub:
https://username:password@github.com/username/repository.git
Gitorious:
https://username:password@gitorious.org/project/repository.git
Heroku: इस समर्थन लेख देखें ।
चेतावनी : अपना पासवर्ड क्लोन URL में जोड़ने से Git आपके सादे पासवर्ड को स्टोर कर लेगा.git/config
। HTTP का उपयोग करते समय अपने पासवर्ड को सुरक्षित रूप से संग्रहीत करने के लिए, एक क्रेडेंशियल सहायक का उपयोग करें। उदाहरण के लिए:
git config --global credential.helper cache
git config --global credential.https://github.com.username foo
git clone https://github.com/foo/repository.git
ऊपर हर 15 मिनट (डिफ़ॉल्ट रूप से) से एक बार आपके पासवर्ड के लिए Git का कारण होगा। git help credentials
विवरण के लिए देखें।