7

我正在评估Vagrant开发过程中的变化,但我经常开发相互依赖、尚未发布的 Node 模块,这些模块连接在一起npm link

由于 Vagrant 没有在来宾机器上共享所有源文件,因此npm link创建的符号链接不再足以作为开发这些模块彼此同步的一种手段。一方面,似乎没有任何方法可以npm link创建链接。对于两个,通过以下方式全面共享符号链接目标将无法扩展:

config.vm.synced_folder "/usr/local/share/npm/lib/node_modules", "/usr/lib/node_modules"

现在,问题。以上是否有任何不正确(例如,存在对硬链接的 npm 支持,但我错过了)?人们使用哪些流程来开发通过 Vagrant 完成测试的相互关联的私有 Node 模块?

编辑:最终,我希望有一个适用于 Mac 和 Windows 的解决方案。另外,为了记录,我不打算暗示链接 Node 模块的工作难度。我只是想利用 Vagrant 来改进这个不常见的工作流程。

4

1 回答 1

1

想法:不使用虚拟机同步功能,而是使用虚拟机中的共享服务来使文件可以从主机操作系统访问。

例如,如果您的 VM 运行 Linux 并且主机操作系统是 Windows,您可以启动 samba 并将其配置为共享相关目录。然后让主机操作系统映射 samba 共享。

如果主机操作系统是 Mac,您可以使用macfuse 之类的东西通过 SSH 将目录挂载到 VM。

祝你好运!

于 2013-12-27T16:47:04.263 回答