Live data from Hacker News

MSBuild is now open source on GitHub

blogs.msdn.com

51–60 of 185 posts

Re: MSBuild is now open source on GitHub

#51

Despite being a Windows developer for 90% of my career, I have no idea why anyone uses MSBuild. I've created several automated build and deployment systems, but I always used the command line Visual Studio interface. Honestly, I don't know why anyone wants MSBuild. Poking around, people cite not needing to install the VS IDE on build servers, but I see zero drawback to doing that. Why would I want to maintain project…

> I could just build in exactly the same way, using the same solution/project files, on my dev box and my build server

Do you run VS on your production servers? Because that's where it will shit a brick because you forgot to install ASP.Net MVC KB123123213 but the IDE installed it as part of update 4. Etc etc...

This problem gets VERY deep.

Re: MSBuild is now open source on GitHub

#52

Earlier quoted context omitted.

> Nobody is seriously going to fork this https://github.com/Microsoft/msbuild/network

I said "seriously".

At least two of those currently have branches checked out with the word "fix" in the branch name. I'd wager that the owners of those forks are using them to fix something, hence "seriously".

Re: MSBuild is now open source on GitHub

#54

Despite being a Windows developer for 90% of my career, I have no idea why anyone uses MSBuild. I've created several automated build and deployment systems, but I always used the command line Visual Studio interface. Honestly, I don't know why anyone wants MSBuild. Poking around, people cite not needing to install the VS IDE on build servers, but I see zero drawback to doing that. Why would I want to maintain project…

Visual Studio uses MSBuild. csproj/vbproj files are MSBuild files. MSBuild will take an SLN file as an argument and do the same as Visual Studio would do with it when you load it and click build.

Re: MSBuild is now open source on GitHub

#55

Nobody is seriously going to fork this and create their own port of MSBuild, possibly one of the most mocked and reviled parts of the .NET ecosystem. I do however congratulate the ground level MS staffers on the effort it likely took to convice the Risk and Legal departments that open sourcing something like this won't make their business fail. That must have been trying.

Msbuild is a fantastic system. But it's incredibly horribly documented so it's difficult to know how to use it correctly.

Re: MSBuild is now open source on GitHub

#56

https://github.com/Microsoft/msbuild/commits/master 3 commits. Because MSBuild just happened. The whole point of open source is that you get to go back and see how the software evolved. Git blame. Everybody learns.

> The whole point of open source is that you get to go back and see how the software evolved.

Its really not. Its a potential -- and perhaps significant -- side benefit of open source in some cases, but its certainly not the main motivation, much less the "whole point".

Re: MSBuild is now open source on GitHub

#58
post #54

Despite being a Windows developer for 90% of my career, I have no idea why anyone uses MSBuild. I've created several automated build and deployment systems, but I always used the command line Visual Studio interface. Honestly, I don't know why anyone wants MSBuild. Poking around, people cite not needing to install the VS IDE on build servers, but I see zero drawback to doing that. Why would I want to maintain project…

Visual Studio uses MSBuild. csproj/vbproj files are MSBuild files. MSBuild will take an SLN file as an argument and do the same as Visual Studio would do with it when you load it and click build.

Correct, VS commandline calls MSBuild. They're using MSBuild, they just don't know it.

Re: MSBuild is now open source on GitHub

#59
post #37

Earlier quoted context omitted.

Yeah; I've had to deal with MSBuild, and I've never really liked it. I have to assume that the big motivation was that they'd prefer to port MSBuild to OS X and Linux than to port MS solution files and MS project files to CMake, Automake, or some other build system.

I haven't gotten past the point of where I just hit Ctrl-F5 and Visual Studio builds stuff for me with MSBuild, so I am certainly no expert on it. But I never had the impression that people liked CMake or Automake either. I ask this not as a rhetorical question but as an actual one: are there build systems that aren't hated, or does everyone just hate the one they have to use the most?

Building using a keyboard shortcut from within an IDE is just one of the many tasks a build system is required for. Another is setting up a build server that builds the projects on every checkin, deploys it on the various test servers and runs all the test suites. That requires the build system to be scriptable, idempotent (as in weird stale cache issues won't screw up your builds) and easily controllable from the command line.

MSBuild completely sucks at these tasks when compared to any free software build system such as Ant, Automake, CMake, WAF or dozens others. It was designed to be used in conjuction with Visual Studio and you very much feel the limitations of it when you try to use it from the outside.

Re: MSBuild is now open source on GitHub

#60

Earlier quoted context omitted.

I said "seriously".

At least two of those currently have branches checked out with the word "fix" in the branch name. I'd wager that the owners of those forks are using them to fix something, hence "seriously".

One of those two is my fork and yes I did it to fix something, but edandersen's point was more geared towards a real fork (i.e. something that takes the project into a different direction) instead of the fork that GitHub requires to send a PR.

I agree with him, we already have a bunch of popular .NET build tools other than MSBuild like FAKE, basing one off of MSBuild doesn't seem to add a lot of value imho.

Post reply on HN