我通常使用原子编辑器进行任何编码工作,并在我的计算机上使用代码创建文件夹。在我的Mac OS计算机上做了一些更新后,一些红宝石宝石停止工作,rvm不再响应,自制软件给我带来了很多麻烦。我想防止这种情况再次发生,并认为我会使用Vagrant。到目前为止我喜欢它并且它工作正常,但我想使用我的Atom编辑器。
通常我使用gulp或grunt处理项目,并且无论何时进行任何更改,它们都会编译文件。虽然我已经设法使用FileZilla连接到Vagrant,但我不知道如何将atom连接到它。我只需要编辑Vagrant VM中的文件,就像我们存储在Mac上的常规目录中一样。知道如何解决这个问题吗?
答案 0 :(得分:2)
您当然可以使用当前的工作流程,但不一定需要使用Filezilla或其他协议连接到您的虚拟机。
最好是查看Synced Folders并同步项目目录。默认情况下,vagrant将当前目录(存储Vagrantfile的位置)同步到vm中的/vagrant
目录。因此,如果您可以将项目目录放在同一文件夹中,它们将自动同步。
如果 Atom (我不是此编辑器的用户)有一个存储项目文件的特殊文件夹,则可以将此文件夹添加为synchronized文件夹。将以下内容添加到您的Vagrantfile
config.vm.synced_folder "/Users/fhenri/project/tac.local", "/project"
在我的情况下,这将我的主机(mac os)文件夹/Users/fhenri/project/tac.local
同步到vm文件夹/project
,因此每当我在此文件夹中进行更改时,我都能看到与vm完全相同的更改。
如果您使用ruby和gem,最好在本地安装gem(在您可以在主机和guest虚拟机之间共享的项目结构中),这样当您进行更改时它们会自动反映在2个环境中。
当您使用gulp
或grunt
时,您将从虚拟机启动它们,处理同步文件夹以及您将从中进行的所有更改mac os主机将自动在vm上被选中。我记得在使用默认的虚拟盒共享文件夹时,自动不是闪光灯,你应该允许几秒延迟,但它仍然有效。
如果性能成为问题,您可以通过进行更改来查看nfs synchronization type
config.vm.synced_folder "/Users/fhenri/project/tac.local", "/project", type: "nfs"
它应该改善一点