在带有更新 2 的 VS 2012 中,我有一个我发布的网站。新的发布向导配置为将站点发布到我磁盘上的文件夹。在检查我的临时文件夹中的某些内容时,我发布了我的网站。我看到发布者在 %TEMP%\WebSitePublish 上创建了一个文件夹,并在其中创建了该站点的 3 个副本:
r:\temp\WebSitePublish\web-1279598559\obj\Debug\AspnetCompileMerge\Source\
r:\temp\WebSitePublish\web-1279598559\obj\Debug\AspnetCompileMerge\TempBuildDir\
r:\temp\WebSitePublish\web-1279598559\obj\Debug\Package\
因为我的网站很大(1.6GB),每个文件夹总共占用 1.6GB 和 4.8GB。虽然我认为即使在发布期间这也在浪费磁盘空间,但我无法与 MS 争论他们实施发布的方式。唯一困扰我的是,即使在关闭 VS IDE 之后,r:\temp\WebSitePublish\web-1279598559 文件夹仍然存在并且仍然占用 4.8GB。如何让发布者在完成发布后删除它的临时文件?
我这个网站的 pubxml 是这样的:
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<WebPublishMethod>FileSystem</WebPublishMethod>
<LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
<LastUsedPlatform>x86</LastUsedPlatform>
<SiteUrlToLaunchAfterPublish />
<ExcludeApp_Data>False</ExcludeApp_Data>
<publishUrl>C:\PrecompiledWeb\Site</publishUrl>
<DeleteExistingFiles>True</DeleteExistingFiles>
<PrecompileBeforePublish>True</PrecompileBeforePublish>
<EnableUpdateable>True</EnableUpdateable>
<DebugSymbols>True</DebugSymbols>
<WDPMergeOption>CreateSeparateAssembly</WDPMergeOption>
<UseFixedNames>True</UseFixedNames>
</PropertyGroup>
</Project>