我和许多人一样,使用 VS Code 进行开发。如今,我的大多数客户都需要在现有项目上完成工作,不用说,我默认不信任这些项目。
因此,为了避免必须在我的计算机上运行他们的代码,我运行虚拟机,在其中部署他们的项目并使用 SFTP 将虚拟机安装到主机,然后/run/user/1000/gvfs/...
在 VS Code 中打开并完成工作。
这很好,但像深度搜索(或无论它叫什么,我说的是ctrl++ )或文件搜索(+ )这样的函数需要很长时间。显然,vscode 需要索引项目,然后它们才能按预期工作,但问题shift是下次我安装虚拟机时,它需要再次索引它。fctrlp
有什么方法可以告诉 VS Code 保留索引吗?或者实际上还有其他方法可以实现我的目标,即能够像在本地开发一样进行开发,而无需承担在我的计算机上运行项目的风险?
尽管我不是 vscode 专家,但我至少可以看到 2 种可能性。
认真考虑在虚拟机上安装 VSCode 并在该机器上进行开发。我刚刚尝试过,我可以确认您不需要安装 GUI 来运行 VSCode。 您可以简单地使用 X 转发,如果默认情况下未启用,则在 SSH 中设置它很简单。这将允许您在虚拟机上启动和运行 vscode,并且 GUI/窗口将显示在您的桌面上。事实上,当我启动 VSCode 时,VSCode 似乎是为这种情况而设计的 - 因为它在标题栏中显示了虚拟机的名称。
或者(未尝试)
放弃 sftp。如果您需要共享文件服务器,请尽可能更改为 NFS,否则更改为 SMB/CIFS。这很有可能解决您的问题。我没有使用 GVFS 接口(这是 FUSE 上的另一个抽象层,它本身就是一个抽象层)。NFS 和 CIFS/SMB 都集成到 Linux 内核中。作为第三种可能性,转向直接使用 FUSE 的 sshfs。(https://maxammann.org/posts/2022/01/linux-file-system-comparison/值得一读)
顺便说一句,谢谢你的提问,它促使我在个人项目的虚拟机上安装 vscode,我想如果我记得使用它,它将允许我提高我的游戏水平。