1

问题:

我在尝试构建 NuGet 包并将其推送到 GitHub nuget Packages 时收到“指定的源 'github' 无效”错误。

有谁知道为什么?或者,来源应该是什么,我在 GitHub 文档中看不到有关此值的任何内容,甚至是托管我的包的最终 url(我希望它只会在创建一个包时显示在包选项卡中)

问题详情:

我刚刚看到您的 GitHub 现在有 Actions,因此您可以在合并更改时让您的代码构建/测试。

我还看到您现在还可以发布 NuGet 包并将其托管在 GitHub 中。

看下面的截图,看起来应该很容易做到

在此处输入图像描述

我花了一段时间才意识到我需要创建一个动作来将此代码放入......所以这是我的动作代码(yml)

在此处输入图像描述

现在,这个动作在我提交时运行,并且一直到最后一行,用于推送到 github。我收到一个错误“指定的源 'github' 无效。请提供有效的源

4

2 回答 2

1

好吧,你的是什么NuGet.Config?我会想象给定错误消息,其中没有名为github. 您需要发布到配置中实际存在的源,否则如何nuget知道发布到哪里?

示例NuGet.Config文件可能如下所示:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="SomeOtherSource" value="https://some.source.maybe.jfrog.com/nuget/nuget-local" />
    <add key="NuGet" value="https://api.nuget.org/v3/index.json" />
  </packageSources>
</configuration>

如果您没有带有 的源key="github",您的命令将失败。

您可以在此处找到有关带有 NuGet 的 GitHub 包的更多信息

于 2020-05-24T03:36:17.623 回答
1

您需要将 GitHub 作为资源添加到 Nuget 配置中

您可以使用以下命令行:

dotnet nuget 添加源 --username USERNAME --password ${{ secrets.GITHUB_TOKEN }} --store-password-in-clear-text --name github "https://nuget.pkg.github.com/OWNER/index .json"

其中 GITHUB_TOKEN 也可以是 PAT 令牌,请查看官方文档中的更多信息。

该命令行会将源附加到您的配置文件

于 2021-07-07T17:40:38.853 回答