views:

75

answers:

2

I am new to both MSBuild and PowerShell and am trying to wrap my head around where these stand with respect to deploying ASP.NET applications. Can someone explain the difference? (I hope I am comparing apples and apples)

+2  A: 

You're a little more comparing apples to oranges. :)

Powershell is a console tool for working in the windows environment whose goal is the eventual replacement of cmd.exe.

MSBuild is an specialized build tool designed for the building of software projects.

You can use either one to invoke an operation in the other (in various ways) but they're really complementary tools. They're aren't all that similar in their core purpose.

Greg D
Thanks. Do you happen to know where MSDeploy.exe fits in? It almost seems to me that Powershell is an alternative to creating .bat files?
Powershell provides a commandline interface and runs powershell scripts just like cmd.exe is a commandline interface and runs .bat scripts. I suspect MSDeploy is a deployment tool related to the MSBuild toolbox.
Greg D
Actually, PowerShell is quite a lot more than just a shell.
Joey
@johannes: It clearly is, but the OP doesn't seem to be in a situation where that matters so much. (I find it quite convenient to test corner cases in .Net APIs that the docs may not be immediately clear on.)
Greg D
A: 

if you are looking a building software from Powershell, you may want to take a look at PSAKE

Iain