3

It has been common practice to check nuget packages used in a solution into source control. With the new package restore feature of nuget 1.6 it is no longer necessary to check packages into source control. However, this leaves your projects dependent on nuget.org. There may come a time when a needed package is not available on nuget.org and not available locally in your organization, without which you would not be able to build your project.

Are there any enterprise solutions for backing up nuget packages used in projects in a centralized fashion? One scenario is to have an enterprise nuget proxy server, from which projects get their nuget packages. This proxy server can backup the requested packages in some fashion, like storing them on a backed up folder and checking the content into a shared source control repository. Another scenario is to have the backup logic done automatically on each developer's machine.

In summary, what are some good automated options for backing up nuget packages?

Alex
  • 9,250
  • 11
  • 70
  • 81

2 Answers2

3

You should look at Artifactory from JFrog (http://www.jfrog.com/): they recently added support for NuGet. Artifactory can act as a central cache for multiple NuGet feeds. I spoke to the development team at a conference earlier this year, and they're really switched on.

There is also ProGet, although I have not used this: http://inedo.com/proget/overview

Matthew Skelton
  • 2,220
  • 21
  • 21
1

I don't know of any existing backup solutions, but this is definitely something we'd like to solve at some point. A couple of ideas come to mind.

  1. Use DropBox to backup the packages directory into another location.
  2. Run your own instance of NuGet.org locally and have your CI server populate the local one with installed packages.
  3. Use MyGet.org to host a private feed of all the packages your team has installed.
Haacked
  • 58,045
  • 14
  • 90
  • 114
  • 1
    DropBox and MyGet involve sharing the source with a 3rd party. Option 2 may work. – Alex Jan 03 '12 at 14:23
  • Phil, what about using the local nuget cache for backup purposes? Right now VS only allows us to browse to the folder in `Tools->Options->PackageManager`. On that settings screen you could allow users to set a secondary folder of cache that users can point to some shared drive within the organization. Only, what to do if that folder is temporarily down? – Alex Mar 14 '12 at 16:36