views:

21

answers:

1

I am working on CI tool CruiseControl.Net and MSBuild. I have many .csproj,.sln files and web projects (more than 30). We have 30 developers and they work on multiple projects in any given time.

As of now, the developer do not release .sln and .csproj files for build. Now my question is how to handle build file as : 1. Since developer does not release .csproj and how would i get newly added files required for compilation? And how would i get newly added reference both .Net Framework and Third-party dlls?

2. Some cases the developer opens WebProject independently and make changes and release. In this case, how would i compile it?

3. How would i manage order of project dependencies?

I am using .Net 2.0/.

Can anyone suggest and guide me here.

Thanks, chandan

A: 

There are many ways to automate builds. One way I have used that could work for you too, is to use NAnt instead of MSBuild. Nant has a csc task that you can use. (CSC.exe being the csharp compiler itself)

<csc target="library" output="yourbuildpath\yourproject.dll" debug="${debug}">
        <sources>
            <include name="**\*.cs" />
            <exclude name="**\AssemblyInfo.cs" />
        </sources>
        <references>
            <include name="lib\*.dll" />

        </references>
    </csc>

This way you build anything that has a .cs extension instead of using the csproj or sln file. All developers are told to place referenced third party dll's in a known lib folder. I have used this only with Class Library and Web Application projects, I'm not sure it's as simple with Website projects.

HollyStyles