我解剖了Laravel Homestead的配置。在Vagrantfile中有以下行:
confDir = $confDir ||= File.expand_path("vendor/laravel/homestead")
在该行之前没有提到 $confDir
。它的价值是零,我想知道什么会给它一个价值?来自CLI的东西?
答案 0 :(得分:4)
Vagrantfile只是一个ruby脚本。在ruby中,美元符号变量是一个全局变量。
现在,仅仅看着家园Vagrantfile时,这仍然没有多大意义。但是,这可能不是唯一使用的Vagrant文件。如流浪文档here中所述,在“LOAD ORDER AND MERGING”下,Vagrantfiles按以下顺序加载:
宅基Vagrantfile是在步骤3中加载的文件。如果在步骤1或2中有Vagrantfile设置$confDir
变量,那么homestead Vagrantfile将选择该文件并使用它。