मुझे लगता है कि HTTPS कई कारणों से GitHub द्वारा अनुशंसित है
1) यह कहीं से भी उपयोग करने के लिए सरल है क्योंकि आपको केवल अपने खाते के विवरण की आवश्यकता है (कोई SSH कुंजी की आवश्यकता नहीं है)
2) HTTPS एक बंदरगाह है जो सभी फायरवॉल में खुला है। SSH हमेशा बाहरी नेटवर्क के लिए संचार के लिए एक बंदरगाह के रूप में खुला नहीं होता है
इसलिए GHHH रिपॉजिटरी SSH की तुलना में HTTPS का उपयोग करके अधिक सार्वभौमिक रूप से सुलभ है।
मेरे विचार में SSH कुंजियाँ उन्हें बनाने में छोटे अतिरिक्त काम के लायक हैं
1) SSH कुंजी आपके GitHub खाते तक पहुँच प्रदान नहीं करती है, इसलिए यदि आपका खाता चोरी हो गया है, तो आपका खाता अपहृत नहीं किया जा सकता है,
2) अपने SSH कुंजी के साथ एक मजबूत keyphrase का उपयोग किसी भी दुरुपयोग को सीमित करता है, भले ही आपकी कुंजी चोरी हो जाए
यदि आपका GitHub खाता क्रेडेंशियल (उपयोगकर्ता नाम / पासवर्ड) चोरी हो गया है, तो आपका GitHub पासवर्ड आपको एक्सेस से ब्लॉक करने के लिए बदला जा सकता है और आपके सभी साझा किए गए रिपॉजिटरी को जल्दी से हटाया जा सकता है।
यदि कोई निजी कुंजी चोरी हो जाती है, तो कोई खाली रिपॉजिटरी का एक बल पुश कर सकता है और आपके द्वारा चुने गए प्रत्येक रिपॉजिटरी के लिए सभी परिवर्तन इतिहास मिटा सकता है, लेकिन आपके GitHub खाते में कुछ भी नहीं बदल सकता है। आपके द्वारा अपने GitHub खाते तक पहुंच के इस उल्लंघन से पुनर्प्राप्ति का प्रयास करना बहुत आसान होगा।
मेरी प्राथमिकता SSH को पासफ़्रेज़ संरक्षित कुंजी के साथ उपयोग करना है। मेरे पास प्रत्येक कंप्यूटर के लिए एक अलग SSH कुंजी है, इसलिए यदि वह मशीन चोरी हो जाती है या चाबी से समझौता हो जाता है, तो मैं जल्दी से GitHub में लॉगिन कर सकता हूं और अवांछित पहुंच को रोकने के लिए उस कुंजी को हटा सकता हूं।
यदि आप SSH पोर्ट को ब्लॉक कर रहे हैं, तो SSH को HTTPS पर टनल किया जा सकता है।
https://help.github.com/articles/using-ssh-over-the-https-port/
यदि आप HTTPS का उपयोग करते हैं, तो मैं आपके खाते के साथ-साथ आपके भंडार की सुरक्षा के लिए दो-कारक प्रमाणीकरण जोड़ने की सलाह दूंगा।
यदि आप HTTPS का उपयोग किसी टूल (उदाहरण के लिए संपादक) के साथ करते हैं, तो आपको उस टूल कॉन्फ़िगरेशन में कैश उपयोगकर्ता नाम और पासवर्ड के बजाय अपने GitHub खाते से एक डेवलपर टोकन का उपयोग करना चाहिए।