xaph
xaph

Reputation: 663

Should NuGet used as a build automation tool?

I'm a totally .net noob and try to automatize a .net build with bamboo. It seems like most people use Nant/Msbuild as build tool but these ones does not manage project dependencies.

I want a tool like maven which handles both dependency management and build process. When I check out the documentation, NuGet seems like only manages dependencies. Should I use NuGet to handle build? Or should I use NuGet together with Nant/MSBuild?

Upvotes: 3

Views: 642

Answers (2)

Steven V
Steven V

Reputation: 16595

You've got the right idea. Nuget is a package manager and resolves dependencies as needed. Then MSBuild is the compiler which compiles your project into assemblies which can be executed. Your project can be configured in a way which will cause Nuget to resolve all the dependencies (also known as 'restoring the packages') when MSBuild compiles your project, which I think you're looking for.

If you want to restore packages on build, in Visual Studio, right click on the solution (normally the top most item in the Solution Explorer) and select Enable NuGet Package Restore. Then commit the resulting .nuget folder to version control for MSBuild to use.

Upvotes: 3

Chris
Chris

Reputation: 3201

From the NuGet homepage.

NuGet is the package manager for the Microsoft development platform including .NET. The NuGet client tools provide the ability to produce and consume packages. The NuGet Gallery is the central package repository used by all package authors and consumers.

It is not a build tool like Maven. MSBuild is probably the closest thing to what you are looking for.

Upvotes: 1

Related Questions