views:

399

answers:

3

There was a question about Msbuild and NAnt advantages and disadvantages. Now let's see which is better TFS Build(with msbuild) or NAnt. In my opinion NAnt because you can easily move the building environment in few seconds to another machine (depends on copying files), also it's easier to manage, much faster to debug and it's not integrated with Team Foundation Server, what do You think?

+1  A: 

I have used both. We have moved from Cruise Control / Nant to TFS.

The big benefit and the reason why we moved is the integration and reporting possibilities.

Nant is easier to work with for simple projects. But if you have a large environment and you look at it as your software development process, not just a build server, then I find TFS much better.

Just use what make you the most productive.

Shiraz Bhaiji
A: 

I haven't used TFS, but have been using NAnt for some time, so take the following points for what you will:

  • NAnt is free and open source
  • NAnt is pluggable with custom tasks
  • NAnt can be used together with various other tools, usually free and open source
  • NAnt is mature and widely used
  • NAnt is portable, doesn't require installation
Grant Palin
And there was no new version since December 8 2007:( i'm using Beta release for 3years - as we moved to .Net 3.5. Hope when comes the Mighty .Net 4 there will be an uprgrade
Leszek Wachowicz
Yes, the lack of a recent release has been worrisome. But the project is alive and there is activity on the discussion board. There is some talk happening about a v1.0 release.
Grant Palin
Yay, new version has been shipped a day after the .NET 4.0 public presentation, but it's still not supporting 4.0:|
Leszek Wachowicz
There is a new NAnt blog, with a post on this: http://sourceforge.net/apps/wordpress/nant/2010/04/19/nant-and-net-4-0/
Grant Palin
+1  A: 

It's worth noting that "TFS Build" (actually named "Team Build") uses the MSBUILD engine that's part of the Windows SDK now. It's a free engine into which you can plug custom tasks, and there's a community of users who have done just that. See

among many others.

MSBUILD is very mature, having been part of .NET since version 1. It could hardly be any more widely-used, as it is the build engine that builds all C# and VB.NET projects from the Visual Studio IDE.

It also comes with an API, with which you can programmatically control builds, do custom logging, etc.

John Saunders