回答:
IISはxcopy展開をサポートしているため、特別な要件がない限り、ファイルをコピーするだけで十分です。
その1つの方法は、ROBOCOPYを使用して新しいファイルをサーバーにコピーする単純なスクリプトです。
サイトが大きく、これに時間がかかりすぎる場合は、バージョン管理システムを使用してください。私はこの目的のためにMercurialが好きですが、バージョン管理システムの構成ファイルが一般に公開されないように注意する必要があります。展開は、変更をコミットし、サーバー上の最新バージョンをチェックアウトするだけです。効率的であることに加えて、これにより、最新で最高のバグに見事なバグがある場合に迅速なロールバックが可能になります(最後の良いバージョンにタグを付けた場合)。
ダウンタイムを最小限に抑えるには、スクリプトでファイルを新しいディレクトリにコピーしてから、ディレクトリの名前をすばやく変更するか、IISが新しいディレクトリを指す場所を変更します。
MicrosoftのWeb Deployment Toolの使用を検討してください。WebアプリケーションとそれらのWebアプリケーションの更新をIIS 6および7の運用Webサーバーに展開するのに役立つように特別に設計されており、MSI(Windows Installer)IMHOよりも優れたタスクを実行します。
通常は、どこかに「ゴールドマスター」サイトをセットアップし、そこから変更をパックするようツールに指示することで使用します。次に、展開するターゲットサーバーを調べ、ゴールドマスターのように見えるようにするために必要な変更を行います(これは、以降の更新に役立ちます)。複数のWebサーバー(つまり、ファーム)に展開する場合に特に便利です。また、単なるファイル以上の展開をサポートしています(レジストリの変更、証明書、SQLデータベースなどの展開も処理できます)。
継続的インテグレーションサーバーがソース管理システムから変更を取得することを提案することで、Joelの回答をさらに進めます。その後、プロジェクトをビルドします。次に、ビルドの出力を新しいフォルダーにxcopyします。その後、いくつかの簡単な構成変更(web.configおよびapp.config)を実行できます。出来上がり、Xcopyの準備ができました!
以前の雇用主で私がやったことは、基本的には、多くのダウンタイムを許すことができなかったオークション/電子商取引サイトでした。
Web開発者としてやるべきことがたくさんあります。しかし、これは私の仕事の中で最も重要な部分でした。