Ruby on rails 在你说“以后,要遵循哪些步骤?”;“耙装”吗;?
我想安装一个插件,但我担心它会安装很多不必要的东西。我想看看rake从安装说明中获取的任何文件,并删除任何不必要的内容 我相信这就是耙子。但我不确定当rake查看rakefile时会发生什么-它是执行整个rakefile还是只执行指定为与此“安装”过程相关的rakefile的一部分?rake的设置非常类似于rakefile由目标和依赖项组成。这与常规ruby脚本不同,因为Rake从您请求的目标开始,并在执行目标之前递归执行其依赖项 因此,安装可能如下所示:Ruby on rails 在你说“以后,要遵循哪些步骤?”;“耙装”吗;?,ruby-on-rails,ruby,installation,rake,Ruby On Rails,Ruby,Installation,Rake,我想安装一个插件,但我担心它会安装很多不必要的东西。我想看看rake从安装说明中获取的任何文件,并删除任何不必要的内容 我相信这就是耙子。但我不确定当rake查看rakefile时会发生什么-它是执行整个rakefile还是只执行指定为与此“安装”过程相关的rakefile的一部分?rake的设置非常类似于rakefile由目标和依赖项组成。这与常规ruby脚本不同,因为Rake从您请求的目标开始,并在执行目标之前递归执行其依赖项 因此,安装可能如下所示: task :install =>
task :install => :stage do
# stuff to do
end
这里,您的目标是安装
任务,它依赖于另一个名为阶段
的任务
要执行install
,Rake必须首先执行stage
的依赖项(如果有),然后执行stage
,最后执行install
。因此,不需要执行整个文件,只需要足够的文件就可以安全地执行所请求的目标
Rake还支持文件目标:
file 'foo.html' => 'bar.xml' do |t|
# Build foo.html from bar.xml, however that is done
end
如果你知道Make,这看起来很熟悉。Rake首先检查bar.xml
是否依赖于任何东西,如果依赖于任何东西,则执行该操作。然后,如果bar.xml
比foo.html
更新,则Rake执行此文件任务。如果foo.html
是较新的,那么Rake会假定它已经构建并跳过它
要了解更多信息,如果您想了解Rake的功能,可以从中开始。当您使用参数(在本例中为install)调用Rake时,Rake文件是任务的集合,该参数就是要执行的任务。(如果您来自Java,则与ant类似) 因此,不,当您调用“rake+task”时,rake不会执行整个rakefile,而只执行所选的任务。请注意,任务可能具有依赖性(例如,“测试”任务可能依赖于以前的其他任务,例如为测试运行创建一些文件夹和内容)
最后,其他用户指出的rake用户指南是有用的,但我建议您在这里读一本更有趣的书->。为什么插件会安装一些“不必要的”东西
假设你的担心是合理的,那么,你能不能不安装插件,进行调查,然后,如果不满意,使用你的源代码管理系统恢复到预安装的版本?如果您不使用源代码管理,这可能是开始…的完美借口。此外,如果您执行“rake安装-干运行”,您将看到rake将执行哪些任务,而不实际执行任何处理。我本来打算编写相同的任务依赖性示例,但后来我想。。。ruby中的“编译”:D