Я припускаю, що HTTPS рекомендується GitHub з кількох причин
1) Простіше використовувати з будь-якого місця, оскільки вам потрібні лише дані вашого облікового запису (не потрібні SSH-ключі)
2) HTTPS - порт, відкритий у всіх брандмауерах. SSH не завжди відкритий як порт для зв'язку із зовнішніми мережами
Отже, сховище GitHub є більш загальнодоступним за допомогою HTTPS, ніж SSH.
На мій погляд, SSH-ключі варті трохи додаткової роботи над їх створенням
1) SSH-ключі не надають доступ до вашого облікового запису GitHub, тому ваш рахунок не може бути викрадений, якщо ваш ключ вкрадений,
2) Використання сильної фразової фрази з вашим ключем SSH обмежує будь-яке неправильне використання, навіть якщо ваш ключ вкрадений
Якщо дані вашого облікового запису GitHub (ім’я користувача / пароль) вкрадені, ваш пароль GitHub можна змінити, щоб перешкодити вам доступу, і всі ваші спільні сховища можна швидко видалити.
Якщо приватний ключ викрадений, хтось може натиснути на порожнє сховище та видалити всю історію змін для кожного вашого сховища, але нічого не може змінити у вашому обліковому записі GitHub. Буде набагато простіше спробувати відновити після цього порушення Вашого доступу до свого акаунта GitHub.
Моя перевага - використовувати SSH із захищеним паролем. У мене є інший ключ SSH для кожного комп'ютера, тож якщо ця машина буде викрадена або ключ зіпсований, я можу швидко увійти в GitHub і видалити цей ключ, щоб запобігти небажаному доступу.
SSH може бути тунельований через HTTPS, якщо мережа, на якій ви перебуваєте, блокує порт SSH.
https://help.github.com/articles/using-ssh-over-the-https-port/
Якщо ви використовуєте HTTPS, я рекомендую додати двофакторну автентифікацію, щоб захистити свій обліковий запис, а також свої сховища.
Якщо ви використовуєте HTTPS з інструментом (наприклад, редактором), вам слід використовувати маркер розробника з вашого облікового запису GitHub, а не кешувати ім’я користувача та пароль у цій конфігурації інструментів.