Я сделал это с помощью журналов svn и задач MsBuild.
Каждый раз, когда я развертываю веб-сайт, я сохраняю где-то номер редакции (в основном в виде плоского файла).
Затем на следующем Build-Deploy я сделаю журнал svn, чтобы увидеть разницу между последней версией и сейчас. Затем моя задача MsBuild берет вывод XML svn log, анализирует его и выводит в другой файл интересные статические файлы, добавленные / измененные / удаленные.
Затем приходят обычные задачи и обрабатывают только измененные файлы вместо каждого файла.
Это была огромная работа (прежде всего с внутренней логикой: наше «статическое» содержимое динамически генерируется для каждой среды, каждого партнера и каждой темы), но оно того стоило.
В любом случае, вы можете попробовать использовать ChecksumCopy, но я не знаю, дешевле ли это ...