As most of the projects we produce are web based, we use the file copy feature of ASP.NET heavily. It makes for wonderfully simple deployment. Using this feature does however mean that we zip the files up before sending them over to the live server.
To speed up deployment even further, we added a zip command to our build job in Team Foundation Server Build that zips the files in the drop location, ready for copy.
Zipping is not supported out of the box in TFS but the MSBuild Community Tasks Project has a lovely one.
To use the zip command in the community tasks library you need to add a reference to it.
<span style="color: #0000ff"><</span><span style="color: #800000">Import</span> <span style="color: #ff0000">Project</span><span style="color: #0000ff">="$(MSBuildExtensionsPath)MSBuildCommunityTasksMSBuild.Community.Tasks.Targets"</span><span style="color: #0000ff">/></span>
<CreateItem Include="$(DropLocation)$(BuildNumber)Release***.*" Exclude="$(DropLocation)$(BuildNumber)Release***.config">
<Output ItemName="ZipFiles" TaskParameter="Include" />
</CreateItem><Time Format="yyyy-MM-dd">
<Output TaskParameter="FormattedTime" PropertyName="buildDate" />
</Time><Zip Files="@(ZipFiles)" WorkingDirectory="$(DropLocation)$(BuildNumber)Release" ZipFileName="$(DropLocation)$(BuildNumber)NBR Release $(buildDate).zip" />