1

We have CCnet+msbuild+tfs.

Builds are configured for each project. We didnt build with solution.

The problem is how should we configure build to not rebuild all projects again if we make only 1

change relevant to one exact project in source control ? Is there any way to make some condition, and where should

we specifu it ?

mirakl
  • 167
  • 3
  • 14

2 Answers2

3

Like Lars said, you have to build it with "Build" target. If projects are still rebuilding, you have to change verbosity to detailed (/v:d).

Open log file and search for "Building target "CoreCompile" completely.". Check the first line below for a reason why this project was build completely. There should be something like this:

    Building target "CoreCompile" completely.
    Input file "C:\Users\xxx\AppData\Local\Temp\xpv14dzs.cs" is newer than output file "obj\Debug\Assembly.pdb".
Ludwo
  • 6,043
  • 4
  • 32
  • 48
1

When calling msbuild use Build as target and not ReBuild. Also make sure you don't change the date of the source files and not to remove any intermediate debug files.

Lars Truijens
  • 42,837
  • 6
  • 126
  • 143
  • But there is Build have been already specified and it is rebuilding all projects. – mirakl Oct 12 '11 at 10:52
  • Then something actually has been changed or at least msbuild thinks it changed. try msbuild with parameter /v:d to see more information and figure out why msbuild wants to rebuild everything – Lars Truijens Oct 12 '11 at 15:10