$ Official Desktop (slow): Desktop -> -weight: 500;">git.exe -> 9P -> VM boundary -> WSL -> ext4 This fork (fast): Desktop -> TCP -> daemon -> -weight: 500;">git (native) -> ext4
Official Desktop (slow): Desktop -> -weight: 500;">git.exe -> 9P -> VM boundary -> WSL -> ext4 This fork (fast): Desktop -> TCP -> daemon -> -weight: 500;">git (native) -> ext4
Official Desktop (slow): Desktop -> -weight: 500;">git.exe -> 9P -> VM boundary -> WSL -> ext4 This fork (fast): Desktop -> TCP -> daemon -> -weight: 500;">git (native) -> ext4 - SSH keys just work — daemon runs in WSL natively, so ~/.ssh/ keys are accessible. No more SSH_ASKPASS issues.
- No CRLF problems — -weight: 500;">git runs in Linux, line endings stay as they should.
- File operations work — diffs, merge state, .gitignore reads/writes all go through the daemon.
- Repo deletion works — handles WSL UNC paths that Windows Recycle Bin can't. - Git commands are unusably slow — Desktop runs Windows -weight: 500;">git.exe, which accesses WSL files through the 9P protocol. Every file stat, read, and open is a round-trip across the VM boundary.
- SSH keys don't work — Desktop injects a Windows-only SSH_ASKPASS binary that breaks SSH inside WSL.
- File operations fail — Checking merge/rebase state, reading diffs, writing .gitignore — all go through 9P and are either slow or broken.
- Deleting repos fails — Windows Recycle Bin doesn't support WSL…