What is MSBuildContrib?
While MSBuild is a fairly complete platform, there are always tasks and tools that are available in other build systems (like NAnt) that haven't made their way in to MSBuild. This project attempts to solve that deficiency. The initial set of tasks and tools are rewritten versions of the equivalent NAnt or NAntContrib tasks and tools that are missing. These are not simply ports of the code but rather complete rewrites using newer language features and adhering to the MSBuild preferences for how tasks behave.
What tasks are available?
Full task documentation will be coming soon.
|Attrib||Changes the file attributes of a file or set of files and directories.|
|CheckDiskspace||Reports any local fixed disks that are less than the minimum available space.||The default minimum space available is 3GB.|
|Checksum||Calculates checksums for a set of files. Loosely based on Ant's Checksum task.|
|CodeStats||Generates statistics from source code.|
|Concat||A task that concatenates a set of files. Loosely based on Ant's Concat task.|
|CreateItemRegex||Sets project properties based on the evaluatuion of a regular expression.|
|FxCop||Analyzes managed code assemblies and reports information about the assemblies, such as possible design, localization, performance, and security improvements.|
|GacUtil||Installs or uninstalls assemblies into the Global Assembly Cache (GAC) by using the gacutil SDK tool.|
|GetEnvironment||Sets properties with system information.|
|Grep||Searches files for a regular-expression and produces an XML report of the matches.|
|Move||Moves a file or set of files to a new file or directory.|
|UpdateItemMetadata||Adds or updates metadata to an item.|
What is MSBuild?
The Microsoft Build Engine is a platform for building applications. This engine, which is also known as MSBuild, provides an XML schema for a project file that controls how the build platform processes and builds software. Visual Studio uses MSBuild, but it doesn't depend on Visual Studio. By invoking msbuild.exe on your project or solution file, you can orchestrate and build products in environments where Visual Studio isn't installed.
Visual Studio uses MSBuild to load and build managed projects. The project files in Visual Studio (.csproj,.vbproj, vcxproj, and others) contain MSBuild XML code that executes when you build a project by using the IDE. Visual Studio projects import all the necessary settings and build processes to do typical development work, but you can extend or modify them from within Visual Studio or by using an XML editor.
You can get more information about MSBuild from the Microsoft Developer Network.
If you don't see a task here, feel free to open an issue or fork this repository, add it, and then submit a pull request. More detailed instructions on how to contribute will be coming soon.
Bugs and feature requests
For transparency and insight into our release cycle, and for striving to maintain backward compatibility, MSBuildContrib will be maintained under the Semantic Versioning guidelines as much as possible.
Releases will be numbered with the following format:
And constructed with the following guidelines:
- Breaking backward compatibility bumps the major (and resets the minor and patch)
- New additions without breaking backward compatibility bumps the minor (and resets the patch)
- Bug fixes and misc changes bumps the patch
For more information on SemVer, please visit http://semver.org/.
Copyright and license
Copyright 2013 Scott Dorman under the GPL V3 license.