У меня есть сборка, которую я сделал, что очень специфично для моей команды в моей компании. Я хочу иметь возможность использовать NuGet, чтобы сделать эту сборку доступной для других проектов, над которыми работают мои команды и подобные команды в моей компании. Однако сборка - это не код, который я хочу поделиться с миром.
Я знаю с Maven, вы можете создавать локальные репозитории и исходные пакеты из локального репо. Поддерживает ли NuGet аналогичную функциональность? Есть ли способ с NuGet указать локальный репозиторий или иметь частные пакеты?
Да! Вы можете разместить свой собственный сервер NuGet!
Самый простой способ - создать общую папку на вашем сервере и ссылаться на нее как на Nuget Server.
Вы можете найти дополнительную информацию о том, как это сделать: Хостинг ваших собственных каналов NuGet
Другой вариант размещения вашего собственного сервера NuGet - использовать JetBrains TeamCity в качестве сервера сборки. Настройка описана здесь.
Сервер Team City действует как репозиторий NuGet, который будет/может/должен быть доступен только в вашей компании.
Основываясь на вашем использовании, есть бесплатные версии программного обеспечения.
В нем есть некоторые интересные варианты, такие как возможность публикации новой версии NuGet по требованию, с каждой новой сборкой непрерывной интеграции и т.д. Один из самых полезных битов (как и для всех реализаций сервера NuGet) заключается в том, что он будет содержать десятки более старых версий ваших сборок, поэтому, если у вас есть один проект, который должен ссылаться на новейшую версию, а другой проект, который должен ссылаться на более старую версию, все будет работать.
Просмотрите бесплатную версию ProGet; мы построили его именно для этой цели. Требуется гораздо меньше времени для настройки и предлагает множество функций выше и выше тех, что предлагаются на стандартном сервере NuGet, таких как несколько каналов, агрегация каналов и дополнительные типы репозиториев (npm, Bower и т.д.).
Если вы хотите заплатить за корпоративную версию, вы также можете использовать LDAP для аутентификации и возможность фильтровать каналы по имени/лицензии из подключенных фидов (т.е. официальный канал NuGet).
NuGet.Server
и разместить его в IIS или Azure. После этого вы сможете отправлять пакеты, используя ключ API, и каждый может подписаться на канал. Вот простое руководство по созданию собственного сервера NuGet .