有没有办法将我的私有NuGet包推送到GitHub

问题描述 投票:0回答:2

我的 Web 应用程序使用 DevExpress.Blazor,它仅作为 DevExpress 安装程序放置在我的系统上的本地 NuGet 包提供。没有公共 NuGet 具有此软件包。

到目前为止,将其作为私有包推送到 GitHub 似乎需要我花几个小时学习如何执行此操作的所有细节(这并不容易)。

有没有一种方法可以将这个私有 NuGet 中的所有这些 DLL 推送到 GitHub 上的我的项目,然后在 GitHub 构建我的应用程序时直接可用?我知道当我从 Visual Studio 发布到 Azure 时,这是有效的(无需执行任何操作)。所以我希望 GitHub 能有一个类似的东西。


我越来越接近了,但仍在挣扎。首先,这是有关如何将 NuGet 包添加到 Azure DevOps 的 DevExpress 信息(不幸的是,他们没有 GitHub 的说明)。

所以我已经通读了使用 NuGet 注册表,我相信它包含我需要的信息。但是...

不清楚我应该采取哪种方法,而且我没有深入的知识来根据那里所写的内容自行做出决定。

它还讨论了步骤,但没有解释如何完成它们。例如,如果我需要执行以下操作,我该怎么做?

您可以通过身份验证将包发布到 GitHub Packages nuget.config 文件,或使用 --api-key 命令行选项 您的 GitHub 个人访问令牌(经典)。

任何关于具体该怎么做的指导都值得赞赏。

github github-actions devexpress nuget-package
2个回答
0
投票

要从根本上回答您的问题,是的,您可以将私有 nuget 包推送到 GitHub。 包权限可以与存储库权限绑定或在每个包上显式设置。

命令行示例如下:

dotnet nuget push {path} https://nuget.pkg.github.com/{user}/index.json --api-key {key}

您应该能够凭借具有包权限的工作流程在 GitHub Actions 内访问您的 nuget 包。如果您没有包权限,您可以将其添加到工作流程

permissions:
  packages: read

0
投票

您没有说明如何使用 NuGet 包。您谈到需要学习如何使用构建管道,这让人质疑为什么您需要它。

另一种选择是使用他们的 NuGet feed,如下所述:

在离线和在线 DevExpress NuGet 源之间进行选择

解决方案是运行:

dotnet nuget add source https://nuget.devexpress.com/{your-feed-authorization-key}/api/ --name DevExpress

(用您从他们的支持团队获得的密钥替换

{your-feed-authorization-key}

© www.soinside.com 2019 - 2024. All rights reserved.