Ich nehme an, dass HTTPS von GitHub aus mehreren Gründen empfohlen wird
-
Es ist einfacher, von überall auf ein Repository zuzugreifen, da Sie nur Ihre Kontodaten benötigen (keine SSH-Schlüssel erforderlich), um in das Repository zu schreiben.
-
HTTPS ist ein Port, der in allen Firewalls offen ist. SSH ist nicht immer als Port für die Kommunikation mit externen Netzwerken geöffnet
Ein GitHub-Repository ist daher über HTTPS universeller zugänglich als über SSH.
Meiner Meinung nach sind SSH-Schlüssel den kleinen Mehraufwand wert, der mit ihrer Erstellung verbunden ist
-
SSH-Schlüssel bieten keinen Zugriff auf Ihr GitHub-Konto, sodass Ihr Konto nicht gekapert werden kann, wenn Ihr Schlüssel gestohlen wird.
-
Die Verwendung einer starken Keyphrase mit Ihrem SSH-Schlüssel schränkt jeden Missbrauch ein, selbst wenn Ihr Schlüssel gestohlen wird (nachdem Sie zuerst den Zugriffsschutz auf Ihr Computerkonto aufgebrochen haben)
Wenn Ihre GitHub-Kontodaten (Benutzername/Kennwort) gestohlen werden, kann Ihr GitHub-Kennwort geändert werden, um Sie für den Zugriff zu sperren, und alle gemeinsam genutzten Repositories können schnell gelöscht werden.
Wenn ein privater Schlüssel gestohlen wird, kann jemand einen Force Push eines leeren Repositorys durchführen und den gesamten Änderungsverlauf für jedes Repository, das Ihnen gehört, löschen, aber nichts in Ihrem GitHub-Konto ändern. Wenn Sie Zugang zu Ihrem GitHub-Konto haben, ist es viel einfacher, sich von diesem Verstoß zu erholen.
Ich bevorzuge SSH mit einem passphrasengeschützten Schlüssel. Ich habe für jeden Computer einen anderen SSH-Schlüssel. Wenn also der Computer gestohlen oder der Schlüssel kompromittiert wird, kann ich mich schnell bei GitHub anmelden und den Schlüssel löschen, um unerwünschten Zugriff zu verhindern.
SSH kann über HTTPS getunnelt werden, wenn das Netzwerk, in dem Sie sich befinden, den SSH-Port blockiert.
https://help.github.com/articles/using-ssh-over-the-https-port/
Wenn Sie HTTPS verwenden, würde ich empfehlen, eine Zwei-Faktor-Authentifizierung hinzuzufügen, um Ihr Konto und Ihre Repositories zu schützen.
Wenn Sie HTTPS mit einem Tool (z. B. einem Editor) verwenden, sollten Sie ein Entwickler-Token von Ihrem GitHub-Konto verwenden, anstatt Benutzername und Kennwort in der Konfiguration dieses Tools zu cachen. Ein Token würde einen Teil des potenziellen Risikos bei der Verwendung von HTTPS mindern, da Token für sehr spezifische Zugriffsrechte konfiguriert werden können und leicht widerrufen werden können, wenn das Token kompromittiert wird.