Сейчас есть следующая настройка
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<WebPublishMethod>FileSystem</WebPublishMethod>
<LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
<LastUsedPlatform>Any CPU</LastUsedPlatform>
<SiteUrlToLaunchAfterPublish />
<ExcludeApp_Data>False</ExcludeApp_Data>
<publishUrl>D:\publish\WebApplication1</publishUrl>
<DeleteExistingFiles>True</DeleteExistingFiles>
</PropertyGroup>
<Target Name="AdditionalFilesForPackage" AfterTargets="CopyAllFilesToSingleFolderForPackage">
<Message Text="AdditionalFilesForPackage" Importance="high"/>
<Copy SourceFiles="$(ProjectDir)\test.txt" DestinationFolder="$(publishUrl)" />
</Target>
</Project>
И действия проходят в таком порядке
AdditionalFilesForPackage (здесь копируется файл)
Deleting existing files...
Publishing folder /...
Что нужно указать вместо CopyAllFilesToSingleFolderForPackage, чтобы копирование файла произошло после выполнения Deleting existing files?