Могу ли я опубликовать частный пакет NuGet?

У меня есть сборка, которую я сделал, что очень специфично для моей команды в моей компании. Я хочу иметь возможность использовать NuGet, чтобы сделать эту сборку доступной для других проектов, над которыми работают мои команды и подобные команды в моей компании. Однако сборка - это не код, который я хочу поделиться с миром.

Я знаю с Maven, вы можете создавать локальные репозитории и исходные пакеты из локального репо. Поддерживает ли NuGet аналогичную функциональность? Есть ли способ с NuGet указать локальный репозиторий или иметь частные пакеты?

Ответ 1

Да! Вы можете разместить свой собственный сервер NuGet!

Самый простой способ - создать общую папку на вашем сервере и ссылаться на нее как на Nuget Server.

Вы можете найти дополнительную информацию о том, как это сделать: Хостинг ваших собственных каналов NuGet

Ответ 2

Другой вариант размещения вашего собственного сервера NuGet - использовать JetBrains TeamCity в качестве сервера сборки. Настройка описана здесь.

Сервер Team City действует как репозиторий NuGet, который будет/может/должен быть доступен только в вашей компании.

Основываясь на вашем использовании, есть бесплатные версии программного обеспечения.

В нем есть некоторые интересные варианты, такие как возможность публикации новой версии NuGet по требованию, с каждой новой сборкой непрерывной интеграции и т.д. Один из самых полезных битов (как и для всех реализаций сервера NuGet) заключается в том, что он будет содержать десятки более старых версий ваших сборок, поэтому, если у вас есть один проект, который должен ссылаться на новейшую версию, а другой проект, который должен ссылаться на более старую версию, все будет работать.

Ответ 3

Просмотрите бесплатную версию ProGet; мы построили его именно для этой цели. Требуется гораздо меньше времени для настройки и предлагает множество функций выше и выше тех, что предлагаются на стандартном сервере NuGet, таких как несколько каналов, агрегация каналов и дополнительные типы репозиториев (npm, Bower и т.д.).

Если вы хотите заплатить за корпоративную версию, вы также можете использовать LDAP для аутентификации и возможность фильтровать каналы по имени/лицензии из подключенных фидов (т.е. официальный канал NuGet).