# Installation Windows Auf Windows entfallen die macOS-spezifischen Direktiven (`UseKeychain` und `AddKeysToAgent`), da die Verwaltung systemweit vom Windows **OpenSSH-Agent-Dienst** übernommen wird. --- ### Schritt-für-Schritt-Anleitung für Windows (PowerShell) 1. **OpenSSH-Dienst prüfen (einmalig als Admin):** Stellt sicher, dass Windows Keys dauerhaft im Speicher hält. Falls noch nicht erledigt, öffne die **PowerShell als Administrator**: ```powershell Set-Service -Name ssh-agent -StartupType Automatic Start-Service ssh-agent ``` 2. **Neuen SSH-Key für GitHub generieren:** Separaten Key anlegen, damit Gitea unberührt bleibt. Führe in der normalen PowerShell aus: ```powershell ssh-keygen -t ed25519 -C "deine_email@example.com" -f $HOME\.ssh\id_ed25519_github ``` * Vergib bei Bedarf eine Passphrase. 3. **Key zum SSH-Agent hinzufügen:** Registriert den Schlüssel im Windows-Agenten. Gib deine Passphrase ein letztes Mal ein: ```powershell ssh-add $HOME\.ssh\id_ed25519_github ``` 4. **SSH-Config anpassen (~/.ssh/config):** Trennung von GitHub und Gitea ohne macOS-spezifische Optionen. Öffne oder erstelle die Datei in VSCode: ```powershell code $HOME\.ssh\config ``` Füge die Konfiguration für beide Hosts ein: ```text # GitHub Host github.com HostName github.com User git IdentityFile ~/.ssh/id_ed25519_github IdentitiesOnly yes ``` Speichere die Datei mit **Strg + S** und schließe VSCode. 5. **Public Key in die Windows-Zwischenablage kopieren:** ```powershell Get-Content $HOME\.ssh\id_ed25519_github.pub | Set-Clipboard ``` Füge den Schlüssel auf **github.com** unter **Settings** → **SSH and GPG keys** → **New SSH Key** ein. 6. **Verbindung testen & Repository klonen:** Prüfe die Verbindung: ```powershell ssh -T git@github.com ``` Klone das Repository z.B.: ```powershell git clone git@github.com:[REPO].git ``` --- ### Wichtiger Hinweis für Git Bash auf Windows Damit auch die **Git Bash** dieselbe `~/.ssh/config` und den laufenden Windows-Dienst verwendet, stelle sicher, dass Git den Windows-nativen SSH-Client anspricht: ```bash git config --global core.sshCommand "ssh.exe" ```