views:

73

answers:

2

"Out of the box" the build in TFS will compile a complete solution and put all the "deliverables" from all its project into the drop folder.

How can I have only the deliverables from a single "main" project end up in the drop folder, why still having all other projects (which it depends upon) compiled?

A: 

You need to create a separate Solutions for your projects. So then you can control which project should go to Drop Folder in one of the solutions and those that do not in another solution

J Angwenyi
Not quite what I need. The projects are in the solution for a reason - the main project depends on them.
urig
+1  A: 

Not quite sure if this is what you want, but try:

<Target Name="AfterBuild">
    <Copy SourceFiles="c:\drop\myfile.dll"  DestinationFiles="c:\temp"  />
    <Delete Files="c:\drop\myfile.dll" />
</Target>

Basically, moving them away from the drop location after build.

pm_2
Thanks. That's a promising direction. But that would require me to specify each and every file that I need to preserve. Isn't there some way for me to indicate the project I'm interested and have its products automagically preserved for me? :)
urig
You can recursively copy files if that's what you mean: http://blogs.msdn.com/b/msbuild/archive/2005/11/07/490068.aspx
pm_2
Thanks again. I don't think recursion helps me. What I need is a filter - Something that will give me only those DLLs and files that come from the direct compilation of the "main" project. The non-essential deliverables from all other projects in the solution are cluttering my drop folder.
urig