Bei dem Error `fatal: refusing to merge unrelated histories` den Befehl `git pull origin master --allow-unrelated-histories` verwenden und das Problem ist gelöst. ### Der Reponame "main" ist voreingestellt, es gehen auch andere. ``` git checkout -b main git add README.md git commit -m "first commit" git remote add origin git@teapot.informationsanarchistik.de:USERNAME/tipps_und_tricks.git git push -u origin main ``` ॐ wn@magma:~/python/tipps_und_tricks→git:(main) vi README.md ॐ wn@magma:~/python/tipps_und_tricks→git:(main) ॐ wn@magma:~/python/tipps_und_tricks→git:(main) ✗ git push -u origin main Branch 'main' folgt nun Remote-Branch 'main' von 'origin'. Everything up-to-date ॐ wn@magma:~/python/tipps_und_tricks→git:(main) ✗ git commit README.md [main a0d4d5c] geändert: README.md 1 file changed, 11 insertions(+), 1 deletion(-) ॐ wn@magma:~/python/tipps_und_tricks→git:(main) git push -u origin main >> Objekte aufzählen: 5, fertig. Zähle Objekte: 100% (5/5), fertig. Delta-Kompression verwendet bis zu 4 Threads. Komprimiere Objekte: 100% (2/2), fertig. Schreibe Objekte: 100% (3/3), 535 Bytes | 535.00 KiB/s, fertig. Gesamt 3 (Delta 0), Wiederverwendet 0 (Delta 0), Pack wiederverwendet 0 remote: . Processing 1 references remote: Processed 1 references in total To teapot.informationsanarchistik.de:Wobbl/tipps_und_tricks.git 83c741e..a0d4d5c main -> main Branch 'main' folgt nun Remote-Branch 'main' von 'origin'. # ssh Ein Zugriff auf den Teetopf über https ist komplexer und unsicherer als über **ssh** ssh ist ein unverzichtbare universelles "Schweizermesser" für professionelles und sicheres Arbeiten im Netz. Um _forgejo_ auf teapot mit ssh zu bedienen, muss mensch einen zweiteiligen Schlüssel generieren. Das vom Server bevorzugte, weil am schwersten zu knackende Verschlüsselungssystem ist ed25519. Einfach zu erzeugen: ``` ssh-keygen -t ed25519 ``` Das zum Entsperren des Schlüssels notwendige lokale Passwort sollte böse und gemein sein, sonst ist die Übung im Falle eines geklauten Rechners fürn A... Je nach verwendetem Desktopsystem bietet Linus natürlich an, sich die Passphrase wegzuspeichern. Um damit das remote System zu bedienen, muss der öffentliche Teil des Schlüssels dort abgelegt werden. Lokal ist das zumeist die Datei ``` ~/.ssh/id_ed25519.pub ``` Die klappste in die Zwischenablage und bunkerst sie in deinem Profil im _forgejo_ **Auf keinen Fall den privaten Schlüssel hochladen oder überhaupt jemals irgendwo durch irgendwelche Leitungen schicken!** Sollte das versehentlich passiert sein, kannste den Schlüssel löschen und nen neuen anlegen. Der Publickey darf im Fernsehen gesendet werden, das schadet nix. Eine prima Seite mit Infos zu git und ssh schrieb der Patrick Asmus, klixdu hier: [SSH-Keys für gitea](https://www.media-techport.de/2023/08/howto-ssh-schluessel-fuer-gitea-einfache-einrichtung/ "HP Patrick Asmus")