When enabling NuGet package restore, it adds the following to my solution:
/.nuget
/.nuget/NuGet.exe
/.nuget/NuGet.targets
As these are part of my solution, committing the solution to my repository without either of these files means I'll have missing references in my solution, but removing the folder or either of these files means NuGet package restore is not enabled.
Given that part of the point of setting up package restore is so that I don't have to commit binaries to the repository, what is the intention behind forcing NuGet.exe into the solution?
Is the assumption that committing one small .exe to the repository is a small price to pay to remove the need to commit other binaries? Or am I supposed to exclude these from the repository also and tell a developer checking out my repository for the first time to go and enable package restore? What about when continuous integration encounters a missing reference in my solution?