После большого количества проб и ошибок я в конечном итоге получил свой пакет NuGet в реестре пакетов Github со следующими действиями / командами:
- Go в GitHub
- Нажмите аватар (вверху справа) → Настройки → Настройки разработчика → Личные токены доступа
- Создайте токен со следующими областями действия:
write:packages
, read:packages
, delete:packages
- Это автоматически проверит
repo
область для вашего токена OAuth
- Откройте cmd
- Перейдите в каталог вашего проекта или в каталог, содержащий ваш пакет NuGet
- Добавьте новый nuget источник
- Pu sh пакет для
github
источника dotnet nuget push --source github bin\Release\MyAwesomePackage.1.0.0.nupkg
Я вижу свой пакет NuGet на GitHub, поэтому теперь я хочу его установить.
- Я создал новый проект → Управление пакетами NuGet → Настройки
- Добавить источник пакета:
Теперь я могу установить свой пакет. Но когда я выбираю свой источник и просматриваю пакеты, появляется окно входа на GitHub. И даже когда я вхожу в систему с учетными данными своей учетной записи, я все равно не могу получить доступ к своим пакетам (отправленным в организацию Github). Теперь, когда я использую диспетчер пакетов NuGet для своего собственного источника пакетов, я всегда получаю следующую ошибку в Output Window
:
Ошибка возникает при просмотре пакетов из пользовательского источника GitHub в диспетчере пакетов NuGet
[source-name] Failed to retrieve metadata from source 'https://nuget.pkg.github.com/[UsernameOrOrganizationname]/query?q=&skip=0&take=26&prerelease=true&semVerLevel=2.0.0'.
Response status code does not indicate success: 401 (Unauthorized).
Пакеты, помещенные в реестр GitHub, должны быть publi c, и даже с моей учетной записью я не могу получить к ним доступ для установки. Однако они появляются на странице моей организации GitHub. Также другим пользователям не нужно добавлять мой личный источник пакета GitHub, скорее пакет должен отображаться в каком-то глобальном канале GitHub внутри диспетчера пакетов, а не?
Что я делаю не так?