एकमात्र कारण, वैकल्पिक हल आप संदर्भ द्वारा सचित्र जा रहा (बनाने के लिए एक एकल "का निर्माण" उपयोगकर्ता, या एक ही id_rsa.REPONAME.pub
प्रति रेपो साझा करना) है:
अन्य उपयोगकर्ता के लिए सार्वजनिक/निजी कुंजी साझा करने से बच
हालांकि कि अपनी स्थिति में ऐसा नहीं होगा (एकाधिक परियोजना का निर्माण), एक ही ssh कुंजी का पुन: उपयोग करने के लिए दो अलग उपयोगकर्ताओं के लिए संभावना खोलेगा की इजाजत दी उसी एसएसएच कुंजी को साझा करें, जो प्रमाणीकरण उद्देश्य को हरा देगा।
प्रमाणीकरण का अर्थ है:
"एक निश्चित ssh कुंजी का उपयोग कर संकेत करना चाहिए कि आप करने वाले हैं पता है जो यह उपयोग कर रहा है"।
GitHub पेज "Managing deploy keys" विभिन्न खातों ssh का उपयोग कर विवरण:
SSH एजेंट अग्रेषण: एजेंट अग्रेषण पहले से ही अपने स्थानीय विकास मशीन जब पर स्थापित SSH कुंजियों का उपयोग करता है आप अपने सर्वर में एसएसएच और गिट कमांड चलाते हैं।
आप चुनिंदा सर्वर को अपने स्थानीय एसएसएच-एजेंट तक पहुंचने के लिए चुन सकते हैं जैसे कि यह सर्वर पर चल रहा था।
इसलिए सर्वर पर अपनी निजी कुंजी को दोहराने की कोई आवश्यकता नहीं है।
मशीन उपयोगकर्ता: (यह "डमी खाता" रणनीति है) उपयोगकर्ता खाते की कुंजी संलग्न करें। चूंकि इस खाते का उपयोग मानव द्वारा नहीं किया जाएगा, इसे मशीन उपयोगकर्ता कहा जाता है।
आप इस उपयोगकर्ता के साथ उसी तरह व्यवहार करेंगे जैसे आप एक इंसान करेंगे, मशीन उपयोगकर्ता खाते की कुंजी संलग्न करें जैसे कि यह एक सामान्य खाता था।
खाता सहयोगी या उन अभिलेखों तक टीम पहुंच प्रदान करें जिनके लिए उन्हें एक्सेस की आवश्यकता है।
तो एक "कुंजी उपयोगकर्ता" से जुड़ी एक निजी कुंजी, प्रति सर्वर एक।
कुंजी (एक प्रति गिटहब रेपो) एसएसएच कुंजी जो सर्वर पर संग्रहीत है और गिटहब पर एक एकल रेपो तक पहुंच प्रदान करता है।
यह कुंजी सीधे उपयोगकर्ता खाते के बजाय रेपो से जुड़ी हुई है।
अपनी खाता सेटिंग्स पर जाने के बजाय, लक्षित रेपो के व्यवस्थापक पृष्ठ पर जाएं।
"Deploy Keys
" पर जाएं और "Add deploy key
" पर क्लिक करें। सार्वजनिक कुंजी को पेस्ट करें और सबमिट करें।
इस बार, एसएसएच कुंजी किसी उपयोगकर्ता से जुड़ी नहीं है (जिसके लिए आप कई रेपो तक पहुंच प्रदान कर सकते हैं), लेकिन एक रेपो के लिए।
के लिए एसएसएच पहुंच प्रदान करना कई रेपो "मशीन उपयोगकर्ता" के बराबर होगा।
प्रमाणीकरण के कार्यकाल में:
- कई रेपोस के लिए एक ही कुंजी का उपयोग ठीक है जब यह
- का उपयोग कर (कुंजी उसकी/उसके खाते से संबद्ध ने कहा है कि जो) एक उपयोगकर्ता द्वारा किया जाता है है कई रेपो के लिए एक ही कुंजी ठीक नहीं है जब कुंजी रेपो द्वारा जुड़ी होती है, क्योंकि आप पर नहीं जानते हैं जो पर पहुंचा है।
यह "मशीन उपयोगकर्ता" से अलग है जहां कई उपयोगकर्ता के लिए एक "उपयोगकर्ता" को सहयोगी के रूप में घोषित किया जाता है।
यहां (कुंजी तैनात करें), कोई "सहयोगी" नहीं है, रेपो को दी गई एक सीधी एसएसएच पहुंच है।
चूंकि कोई बेहतर तरीका नहीं है क्योंकि हमने एक समर्पित तैनाती उपयोगकर्ता बनाया है जिसे हम केवल पढ़ने के लिए पहुंच प्रदान कर रहे हैं। अंतिम परिणाम एक जैसा है। – Datageek
यहां पर बहुत बढ़िया उत्तर: http://stackoverflow.com/questions/11656134/github-deploy-keys-how-do-i- प्राधिकरण-more-than-one-repository-for-a-single-mac – apple16