2011-11-23 64 views
0

我想通過做耙當文件已存在

file 'myfile' => [ :some_task ] 

任務將不會運行,因爲該文件已經存在,但是當文件存在任務運行運行家屬。那麼有沒有辦法讓這個任務在文件存在時不運行?

回答

0

這取決於。 :some_task是什麼。

:some_task是符號,沒有字符串。看起來,myfile不依賴於另一個文件,而是依賴於任務。

如果你有這種情況:

require 'rake' 

file 'myfile' => [ :some_task ] do |tsk| 
    puts "Start #{tsk}" #some action 
end 
task :some_task do |tsk| 
    puts "Start #{tsk}" #some action 
end 

如果:some_task是較新的問題,是沒有意義的。這是一個總是要執行的任務。

如果myfile有一個prerequsite,必須執行,然後myfile將被創建。