Files
JS/07_git/docs/git-ssh-installation-windows.md
Philippe Torrel 9308f282ad
2026-09-02 11:13:15 +02:00

96 lines
2.1 KiB
Markdown

# 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"
```