# File lib/webby/apps/generator.rb, line 189
  def cp( file )
    src = template / file
    dst = site / file

    if test(?e, dst)
      if identical?(src, dst)
        identical(dst)
        return
      end

      choice = case options[:collision]
        when :force then :force
        when :skip  then :skip
        else force_file_collision?( dst ) end

      case choice
        when :force then force(dst)
        when :skip  then skip(dst); return
        else raise "Invalid collision choice: #{choice.inspect}" end
    else
      create(dst)
    end
    return if pretend?

    FileUtils.cp(src, dst)
  end