Repository navigation
Question: recommended setup when source code must stay on the Windows filesystem (performance, file change notifications, containers) #41816
|
I'm a developer with a single Windows 11 Pro machine (currently build 26300). I'd like to ask the WSL team for advice, or a pointer to plans, about a setup I couldn't make work. Most of the problems below already have their own issues, and I link them. I'm putting them together because they block my workflow together, and fixing only one of them doesn't change the outcome. Background My repositories mix .NET Framework 4.8 projects and Windows-only tools with Node and PHP code in the same tree. Because of that, the source has to stay on the Windows filesystem, and I don't want to keep a second writable copy inside a Linux filesystem. I know the general recommendation is to move code into the Linux filesystem. This question is about users who can't do that. In September I tried WSL 2.9.11 (Ubuntu 26.04.1, kernel 6.18.40.1) as my main development environment, and then went back to native Windows. For containers I use Docker Desktop with the Hyper-V backend, with the Windows source folder bind-mounted into a Compose stack (PHP-FPM, OpenResty, MySQL, PostgreSQL, Redis). What I measured on this machine Same Windows sample folder, same distro and runtime. Each figure is the median of 5 runs, taken after one warm-up run:
On a real repository with about 1,660 tracked files, git status from Linux over 9p took about 9.0 s, compared with 0.13 s for Git for Windows on the same tree. Change notifications: edits made from Windows (in-place write, create, atomic replace) produced no inotify event in Linux within 2 seconds, on both 9p and virtiofs, although the new content was readable. Writes made from inside Linux did produce events on virtiofs. In a similar test, Docker Desktop 4.88.1 on the Hyper-V backend (gRPC FUSE) did deliver an inotify event for an edit made from Windows. Pain points
Questions
I'm not asking for all of this to be fixed at once. Any pointers or partial answers would help me decide whether to try WSL again. I can share the raw measurements if they are useful. Thanks. |
Replies: 3 comments
Logs are required for review from WSL teamIf this a feature request, please reply with '/feature'. If this is a question, reply with '/question'. How to collect WSL logsDownload and execute collect-wsl-logs.ps1 in an administrative powershell prompt: The script will output the path of the log file once done. If this is a networking issue, please use Once completed please upload the output files to this GitHub issue. See Collect WSL logs (recommended method). If you choose to email these logs instead of attaching them to the bug, please send them to wsl-gh-logs@microsoft.com with the GitHub issue number in the subject, and include a link to your GitHub issue comment in the message body, and reply with '/emailed-logs'. |
|
/question |
Diagnostic information |
Diagnostic information