Da ich damit viel geschäftlich und Privat arbeite mal ein kurzer Hilfe + Erklärversuch von mir.
Git arbeitet im Prinzip mit Kopien von Repositories (Versionsverwalteten Datengräbern).
Bei dir ist es vermutlich so, dass das Hauptrepository, dass verwendet wird auf deinem Webserver (Server) liegt.
Der Entwickler hat vermutlich bei sich das Repository dort geklont, macht lokal seine Änderungen und über einen commit "speichert" er diese.
Mit einem anschließenden "Push" kann er diese auf das Hauptrepository schieben. Wenn dann dort die Änderungen auch aktiv sind (branch, working copy usw. ist das ganze auch produktiv.).
Aus welchem Grund du das Repository bei dir lokal Klonen sollst verstehe ich nicht aber kurz ein Beispiel von meinem Server:
Auf dem Server liegt das Repository (im Dateiformat). Ich klone auf einem system per ssh:
(deck@steamdeck ~)$ git clone ssh://bioh4z4rd@homeone:/srv/git/awesomewm.git
Cloning into 'awesomewm'...
remote: Enumerating objects: 199, done.
remote: Counting objects: 100% (199/199), done.
remote: Compressing objects: 100% (173/173), done.
remote: Total 199 (delta 59), reused 106 (delta 9), pack-reused 0
Receiving objects: 100% (199/199), 3.18 MiB | 2.85 MiB/s, done.
Resolving deltas: 100% (59/59), done.
SSH merkt sich wie von anderen angemerkt zu der Server Adresse den Fingerprint (im Endeffekt das "Gesicht"). Ändert sich dieses kommt die Fehlermeldung mit dem Hostkey. Der Fingerprint ist lokal in der Datei ~/.ssh/known_hosts gespeichert:
deck@steamdeck ~)$ cat .ssh/known_hosts
homeone ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILkrucHGIP0mftMU0eA4hsbFKbJvJBvlKbSz9Vwd+MPC
Ich habe diesen kurz geändert und daraufhin wieder versucht zu klonen:
(deck@steamdeck ~)$ git clone ssh://bioh4z4rd@homeone:/srv/git/awesomewm.git
Cloning into 'awesomewm'...
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ED25519 key sent by the remote host is
SHA256:w2c3qw43isDtuCqEtZh2j5MtpgwMwGE2PLgj0p4eB20.
Please contact your system administrator.
Add correct host key in /home/deck/.ssh/known_hosts to get rid of this message.
Offending ED25519 key in /home/deck/.ssh/known_hosts:1
Host key for homeone has changed and you have requested strict checking.
Host key verification failed.
fatal: Could not read from remote repository.
Alles anzeigen
Ich denke hier stehst du.
Folgendes Schlage ich dir vor: Frage den Provider nach dem SSH host key. Diesen vertraust du, indem du den Eintrag für deinen server in der ~/.ssh/known_hosts änderst. Nichts anderes hier bitte.
Dann sendest du dem Provider zusätzlich deinen sogenannten Public key. Ist in der Regel in ~/.ssh/id_ed25519.pub.
Hast du keinen, dann generier ihn über "ssh-keygen -t ed25519". Das ist ein state of the art key und älteres Material sollte eher nicht verwendet werden.
Ganz wichtig: Nur die .pub schicken. Die id_ed25519 ist im Grunde der Ausweis deines PCs.
Dein Provider hinterlegt nun diesen Key als sogenannten "authorized_key" auf dem Server. ~/.ssh/authorized_keys ist der Pfad hierfür.
Der Server erkennt den Fingerabdruck (Das Gesicht bzw. die Identität deines Computers) und erlaubt dir mit dem spezifizierten User sich einzuloggen.
Sieht bei mir dann so aus:
bioh4z4rd@homeone ~ % cat .ssh/authorized_keys
ssh-ed25519 AAAAC3NzaC1lZDI1NTEICHZEIGEUCHDOCHNICHTMEINEIDENTITY deck@steamdeck
Ab dem Moment kannst du Klonen / einloggen per SSH ohne Passwort mit deinem PC, du hast den korrekten Host "gemerkt".
Es gibt eigentlich nur 2 Fälle in denen sich der HostKey ändert:
1. Ein Idiot war am Werk und hat einen neuen Key generiert oder den PC neu aufgesetzt
2. Der PC ist ein neuer / anderer.
Bist du dir sicher, dass du wirklich mit deinem Hoster redest?