Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to keep VS2015 NuGet from adding packages to TFS

VS2013 had a bug where NuGet would add packages as pending changes, even if you told it not to with .tfignore. There was a workaround, but it doesn't work with VS2015/NuGet3, and NuGet is back to its old tricks. Is there a "Nu" workaround? :-)

Microsoft Connect item: NuGet adds packages to TFS despite .tfignore

like image 296
Edward Brey Avatar asked Aug 07 '15 21:08

Edward Brey


People also ask

How do I disable NuGet package?

Go to Tools -> Options -> NuGet Package Manager -> General -> Package Restore. The first option disables restore itself, while the 2nd option disables on build restore. NuGet tries to restore to make sure that the packages were not deleted from disk or that the assets file (which helps the intellisense) is not deleted.

Should NuGet packages be in source control?

Developers typically omit NuGet packages from their source control repositories and rely instead on package restore to reinstall a project's dependencies before a build.


1 Answers

It looks like this is fixed in version 3.2 RC of the NuGet Visual Studio 2015 Extension - updating to this version worked for me, at least.

A discussion about this issue can be found here where it is recommended to update from NuGet 3.1 to 3.2 RC.

Update

Version 3.2 of the extension has now been released (found here) which includes this fix.

Clarification

To get this working you need two things:

  1. A nuget.config file containing the disableSourceControlIntegration setting
  2. A version of the NuGet Visual Studio 2015 Extension that respects the disableSourceControlIntegration setting (versions from 3.2 onward should work)

As indicated in the docs:

NuGet first loads NuGet.config from the default location, then loads any file named NuGet.config starting from the root of the current drive and ending in the current directory.

This means that you can specify <solution><add key="disableSourceControlIntegration" value="true" /></solution> in the default config file for your user profile (found at %APPDATA%\NuGet\NuGet.Config) or in the NuGet config file in your solution directory, e.g., \MySolution\.NuGet\NuGet.config.

like image 135
nick_w Avatar answered Sep 18 '22 13:09

nick_w