为什么使用 SouceTree 的 WSL2 上的 Git 对我来说这么慢?

zen*_*one 8 git atlassian-sourcetree docker windows-subsystem-for-linux wsl-2

我的环境如下。

  • Windows10?version 2004, build 19041.572?
  • 64位操作系统
  • 在 WSL2 上,我使用 Ubuntu?Ubuntu-20.04?
  • 我将 git 与 SourceTree 一起使用。

我使用 docker-compose 来开发 Web 服务。在 Windows 上运行 docker-compose 访问网页非常慢。我在 WSL2 上的 Ubuntu 主文件夹中创建了一个 docker 环境。网站数据(Laravel)安装在WSL2上的docker环境中,由git管理。

如何提高 WSL2 上 SourceTree 的速度?Windows 上的 Git 速度更快。

vov*_*sko 7

不幸的是WSL2有一些问题与文件系统的性能/mnt

如果您不需要从 Windows 编辑它,则可能是checkout您的 repo 到容器的/home, 而不是 的一个选项/mnt/...

在 Windows 上从 Linux 容器运行 Docker 无济于事。

UPD:同样的问题可能出现在一个没有安装任何东西的大型项目中,但仍然通过\\wsl$Windows的路径访问 WSL 内的 repo 。问题仍然悬而未决。

  • 路径确实很重要。当您的项目位于“/home/user/project”中,并且您从 Linux 发行版 bash 中启动 docker-compose 时,速度快如闪电。在 Windows CLI 中调用 docker-compose(在 `\\wsl$\distribution_name\home\user\project` 中)非常慢,即使它是完全相同的 docker-compose 文件。反之亦然 - 从 Linux 调用 `/mnt/c/my-project` 很慢,而在 Windows 中调用 `C:\my-project` 又很快。所以结论是,WSL(2) 仅在从 Windows 访问时缓慢,而 NTFS 仅在从 Linux 访问时缓慢。 (2认同)