有没有办法在Vagrant中同步子文件夹?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有没有办法在Vagrant中同步子文件夹?相关的知识,希望对你有一定的参考价值。

我的项目文件夹中的子文件夹很少,不需要同步到来宾计算机。 (特别是.git文件夹,其中包含> 800个文件。)有没有办法在Vagrant中同步已同步文件夹的子文件夹?或者我该如何防止不需要的文件夹被同步?

在默认情况下同步/vagrant/时,以这种方式禁用同步似乎不起作用:

config.vm.synced_folder "www/kisa/.git/", "/vagrant/www/kisa/.git/", disabled: true
答案

通常(使用vboxsf,vmhgfs,NFS,...)通过将指定目录从主机挂载到guest虚拟机来完成同步。出于性能原因,不应该阻止某些内容“同步”,因为除非您从guest虚拟机访问数据,否则不会传输数据。如果您在guest虚拟机上写入数据但又不想将其同步回主机,则最简单的方法是将其写入其他位置。 =)

即将到来的Vagrant 1.5将包括rsync synced folders,它将支持rsync__exclude选项。一些云提供程序插件(aws,digital_ocean,..)已经使用rsync,但是对排除的支持取决于提供程序。在某些情况下,您只需要分别同步所需的文件夹。您可以使用禁用默认同步

config.vm.synced_folder ".", "/vagrant", disabled: true
另一答案

我不能假装理解这一点,但this.上显示的方法似乎适用于Windows 7主机上的Linux(Ubuntu)客户端。

我想将它用于他描述的内容 - 排除node_modules目录的共享。

如果链接消失,要点是:

$ mkdir ~/vagrant_node_modules
$ sudo mount --bind ~/vagrant_node_modules /vagrant/node_modules

所以/vagrant是共享的,但/vagrant/node_modules不是。

比我更了解的人可能知道这是否有问题。

以上是关于有没有办法在Vagrant中同步子文件夹?的主要内容,如果未能解决你的问题,请参考以下文章

Vagrant:如何禁用 Windows 主机的 NFS 同步文件夹?

有没有办法关闭代码片段中的命名建议?

有没有办法将2个非常相似的代码片段组合成一个函数并重复?

vagrant 同步文件夹子目录所有者

有没有办法使用相同的布局动态创建片段并向它们显示数据?

为什么vagrant使用vmdk磁盘格式作为其标准包格式?