    # File docs/makedocs.rb, line 80
    def uploadDocs( url, docsdir )
            header "Uploading new docs snapshot to #{url}."

            case url

            # SSH target
            when %{^ssh://(.*)}
                    target = $1
                    if target =~ %{^([^/]+)/(.*)}
                            host, path = $1, $2
                            path = "/" + path unless path =~ /^(\/|\.)/
                            cmd = "tar -C #{docsdir} -cf - . | ssh #{host} 'tar -C #{path} -xvf -'"
                            unless $DEBUG
                                    system( cmd )
                            else
                                    message "Would have uploaded using the command:\n    #{cmd}\n\n"
                            end
                    else
                            abort "--upload ssh://host/path"
                    end
            when %{^file://(.*)}
                    targetdir = $1
                    targetdir.gsub!( %{^file://}, '' )

                    File.makedirs targetdir, true
                    Dir["#{docsdir}/**/*"].each {|file|
                            fname = file.gsub( %:#{docsdir}/:, '' )
                            if File.directory? file
                                    unless $DEBUG
                                            File.makedirs File.join(targetdir, fname), true
                                    else
                                            message %{File.makedirs %s, true\n} % File.join(targetdir, fname)
                                    end
                            else
                                    unless $DEBUG
                                            File.install( file, File.join(targetdir, fname), 0444, true )
                                    else
                                            message %{File.install( %s, %s, 0444, true )\n} % [
                                                    file,
                                                    File.join(targetdir, fname),
                                            ]
                                    end
                            end
                    }

            else
                    raise "I don't know how to upload to urls like '#{url}'."
            end
    end