Update at bottom By default Rake Tasks append behavior every time they are defined. The following example shows that both definitions are executed. require 'rubygems' require 'rake' task :the_task do p "one" end task :the_task do p "two" end Rake::Task[:the_task].invoke # >> "one" # >> "two" I like this behavior, but sometimes you want to overwrite a task instead of appending to what's already the