disableSourceControlIntegration with Automatic Package Restore

Topics: General
Jul 24, 2014 at 8:22 PM
I was undecided on whether this belongs in this discussion board, or on the issues board for NuGet Docs in GitHub. If it's a matter of my misunderstanding, then I apologize, and I will move it over to the Docs issues board.

I am using Visual Studio 2010 and NuGet 2.8.50313.31, along with TFS 2012. I am attempting to get the new automatic package restore enabled, along with not having to check in the "packages" folder nor any other "MSBuild-Integrated Package Restore" files. I've started a very simple C# Console Application (built-in VS template solution) for testing the process. According to http://docs.nuget.org/docs/reference/package-restore I should be using the file $(SolutionDir).nuget\NuGet.Config (the page says this approach is preferred vs using .tfignore to cloak). Unfortunately, NuGet does not automatically create such a folder or file. When I try to create the .nuget folder in Windows, I get a message stating that I must specify a file name (I guess Windows doesn't like dot-files). I can manage to create this folder using the command line, but then I need to copy-paste a NuGet.Config file from somewhere (I'm honestly not going to remember the xml for disableSourceControlIntegration to add it manually each time). So each time I start a new solution, I'll need to remember to go hunting for a NuGet.Config file from somewhere else. Only once this is done can I actually add a NuGet package to my solution.

Using the above (command-line to create the folder and then copy-paste in a file from somewhere else) I have managed to get Auto Package Restore enabled while keeping "packages" out of TFS, but it seems like a kludgy way of setting it up. It used to be with the MSBuild-Integrated method that NuGet would set up TFS exclusion automatically (and I assume Git, but I've never tested). I see as of 3.0 CTP1 that the MSBuild-Integrated method is removed from the menu, making the new method de jure. Since APR is becoming default with NuGet, is it possible to make the "disableSourceControlIntegration" more automated? When the menu option for "Enable NuGet Package Restore" was removed, could it be possible to add an option "Exclude NuGet Packages from Source Control"?

Or maybe I'm missing something and I should be talking to the Docs team?