![](/img/trans.png)
[英]How to use git to do version control when I edit my code in Windows but build and run my code in Linux (using pycharm)
[英]How do I force my Linux distro in WSL2 on Windows to use the Linux version of nvm and not the Windows version?
我安装了 Windows 的 nvm,当我通过 WSL2 登录我的 Pengwin Linux 发行版时执行whereis nvm
,它显示它正在使用 Windows 文件系统上的二进制文件安装在/mnt/c/Users/seefe/AppData/Roaming/nvm/nvm.exe
尽管还经历了 nvm 的 Linux 安装过程,我认为这会隐藏 Windows 版本。
与gatsby-cli
相同。 问题是在 Linux 土地上,运行 nvm 和 gatsby 是一件苦差事,因为跨文件系统的命令响应时间太慢了。 当在 Linux 中安装和使用专门针对 Linux 文件系统的包时,WSL 环境策略是什么来确保我通过 npm 安装的任何包?
很抱歉最初用这个答案把你引向了错误的方向。
在测试 WSL session(我自己通常使用n
)中再次安装nvm
后,我看到 Linux nvm
安装为 bash function ,而不是二进制文件。 这意味着whereis nvm
实际上并没有看到它,因为whereis
只查找文件。
> type nvm | head -1
nvm is a function
需要注意两点:
在没有完全限定路径(绝对或相对)的情况下输入时,function 将优先于二进制。 所以只要type nvm
返回 function,你应该没问题。
你提到(在评论中)你的路径以/home/seefer/.nvm/versions/node/v14.18.0/bin
开头的事实意味着Linux nvm
工作正常并将正确激活目录添加到你的路径.
如果您在使用nvm use
或nvm install
命令后遇到node
或npm
问题,请告诉我们。
虽然whereis nvm
找到/mnt/c/Users/seefe/AppData/Roaming/nvm/nvm.exe
,但您必须实际运行nvm.exe
才能运行 Windows 版本。
不过,这里还有一件事需要注意,这与另一个答案有关。
npm
上的 npm 很奇怪,因为它实际上确实附带了一个名为npm
的shell 脚本(即使它适用于 Windows),该脚本又调用 Windows npm.exe
。 如果您安装了 Windows Node/NPM(这听起来像您安装的),请注意始终使用 Linux nvm 激活Linux版本(以便将其添加到路径中)。
否则,您可能会遇到 Windows npm
尝试在 WSL/Linux 下运行的问题。
小心这个。 只要您已使用 Linux 激活节点/npm 安装
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.