Questions tagged «rake»

Ruby构建实用程序,类似于纯Ruby中定义的构建命令。



3
为什么在Rails 3中找不到我在lib / tasks中的自定义rake任务?
内置的rake任务可以正常工作,但是我的新自定义任务在Project / lib / tasks / payments.rb中没有加载: namespace :payments do desc "Tally payments at the end of the month" task :compute => :environment do BillingPeriod.compute_new_period end end $ rake payments:compute (in /Users/rob/Code/Apps/skyfarm) rake aborted! Don't know how to build task 'payments:compute' 如果我加载文件application.rb,它可以正常工作: require 'lib/tasks/payments.rb' ...但是它打破了其他东西: $ rails s ./lib/tasks/payments.rb:1: undefined …

1
Rails db:migrate与rake db:migrate
我是新手。我注意到在Rails 5中生成数据迁移时,有些人用rails db:migrate了over rake db:migrate。有人可以解释一下Rails vs rake命令在数据库迁移中的区别吗?这是否意味着在rails 5中过时的rake命令? 非常感谢

6
在RSpec中运行Ruby调试?
我试图让Ruby调试器在我的一种规格中运行: describe User do it "should be valid" do debugger User.new.should be_valid end end 当我运行rspec时,我得到: debugger statement ignored, use -d or --debug option to enable debugging 我尝试了以下方法: rake spec --debug rake spec --debug --trace rake spec:models --debug bundle exec rspec --debug bundle exec rspec --debug spec/models/ bundle exec rspec --d …


4
如何生成自上次拉动以来发生的更改的git diff?
我想将以下操作编写为一个命令,最好是在rake中编写脚本: 获取本地git存储库的版本。 Git拉最新的代码。 从我在步骤1中提取的版本到现在本地存储库中的版本的diff。 换句话说,我想从中央存储库中获取最新代码,并立即生成自上次提取以来所发生更改的差异。
76 git  diff  rake  pull 

7
如何批量“按Enter键退出”
我正在使用rake来构建我的项目,并且我有一个类似于以下内容的build.bat文件: @echo off cls rake 当我双击build.bat时,dos窗口会弹出并显示所有进度,但在任务完成时会自行关闭。有没有办法做Console.ReadLine,以便用户有机会查看日志? 谢谢。 更新: 我在下面尝试过,但是没有用。不知道为什么。 @echo off cls rake pause
76 batch-file  rake 

5
从Rakefile执行bash命令
我想从中执行许多bash命令Rakefile。 我已经尝试了以下内容 Rakefile task :hello do %{echo "World!"} end 但是执行rake hello时没有输出?如何从Rakefile执行bash命令? 注意:这不是重复的,因为它专门询问如何从Rakefile执行bash命令。
76 ruby  bash  rake 

3
覆盖Rails的默认rake任务
我有一个Rails 2.2项目,我想在其中重写rake db:test:prepare任务的功能。我以为这会起作用,但是不会: #lib/tasks/db.rake namespace :db do namespace :test do desc "Overridden version of rails' standard db:test:prepare task since the schema dump used in that can't handle DB enums" task :prepare => [:environment] do puts "doing db:structure:dump" Rake::Task['db:structure:dump'].invoke puts "doing db:test:clone_structure" Rake::Task['db:test:clone_structure'].invoke end end end 我了解标准任务的行为。如果我将任务的名称改为:prepare2,然后再做rake db:test:prepare2,那么它将正常工作。从中得出的自然结论是,我的rake任务是在内置的Rails任务之前定义的,因此我的rake任务将被标准:prepare任务覆盖。 谁能看到我该如何解决?我宁愿重写它,也不必使用新任务。谢谢,最大

3
添加自定义种子文件
我想用虚拟数据填充新功能,但不想使用db / seeds.rb文件,因为它已经具有与该功能无关的种子其他数据。 要运行默认seeds.rb文件,请运行命令rake db:seed。 如果我在db名为的目录中创建一个文件,seeds_feature_x.rbrake命令看起来(仅)运行该文件会是什么样?

6
为什么rake db:migrate:reset未在rake -T中列出?
为什么没有列出某些耙任务rake -T?喜欢db:migrate:reset吗?我可以毫无问题地执行它,但是为什么没有列出它呢?有没有办法获得耙任务的真实完整列表? 百分比-T (在/ home / zeus / projects / my_project中) 谈论#列出所有Rails框架和环境的版本 rake db:create#从config / database.yml中为当前Rails.env创建数据库(使用db:create:all在配置中创建所有数据库) rake db:drop#删除当前Rails.env的数据库(使用db:drop:all删除所有数据库) rake db:fixtures:load#将灯具加载到当前环境的数据库中。 rake db:migrate#迁移数据库(选项:VERSION = x,VERBOSE = false)。 rake db:migrate:status#显示迁移状态 rake db:rollback#将模式回滚到以前的版本(指定步骤w / STEP = n)。 rake db:schema:dump#创建一个db / schema.rb文件,该文件可移植到AR支持的任何数据库中 rake db:schema:load#将schema.rb文件加载到数据库中 rake db:seed#从db / seeds.rb加载种子数据 rake db:setup#创建数据库,加载模式,并使用种子数据进行初始化(使用db:reset首先也删除db) rake db:structure:dump#将数据库结构转储到SQL文件中 rake db:version#检索当前模式版本号 …

7
耙任务在哪里定义?
在新创建的Rails项目(由生成rails someName)上,可以运行一些“默认”耙任务,例如: rake test rake db:migrate 等等 问题是,这些任务在哪里得到描述?默认值Rakefile不具有所有这些任务。 此外,我签出了一些使用的项目,rspec并且能够rake spec运行所有测试。spec目标在哪里定义?

8
我有一个Rails任务:应该使用脚本/运行器还是耙子?
对于临时的Rails任务,我们有一些实现的替代方案,其中主要的替代方案似乎是: script/runner some_useful_thing 和: rake some:other_useful_thing 我应该选择哪个选项?如果有明确的偏爱,那么我何时应该考虑使用另一个?如果从来没有,那么您为什么会认为它仍然存在于框架中而没有弃用警告?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.