日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

开发现代化的.NetCore控制台程序:(3)将nuget包发布到GitHubPackages

發布時間:2023/11/16 asp.net 54 coder
生活随笔 收集整理的這篇文章主要介紹了 开发现代化的.NetCore控制台程序:(3)将nuget包发布到GitHubPackages 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

上一篇文章已經把項目模板的nuget包發布到了 nuget 的官方源了,其實還可以發布到其他源,比如 GitHub ,本文記錄一下發布到 GitHub Packages 的過程。

注意:本文建立在本系列第二篇文章的基礎上,為了更好理解操作過程,請先熟悉本項目的代碼結構

創建 GitHub token

訪問 https://github.com/settings/tokens 頁面

生成一個 token (classic)

記得勾選跟 packages 有關的權限

在項目中添加 nuget source 配置

src/Templates 目錄中新建 nuget.config 文件

<?xml version="1.0" encoding="utf-8"?>

<configuration>
    <packageSources>
        <clear />
        <add key="github" value="https://nuget.pkg.github.com/NAMESPACE/index.json" />
    </packageSources>
    <packageSourceCredentials>
        <github>
            <add key="Username" value="USERNAME" />
            <add key="ClearTextPassword" value="TOKEN" />
        </github>
    </packageSourceCredentials>
</configuration>

以上只是 GitHub 提供的配置模板,有幾個需要修改的地方

  • USERNAME 替換為 GitHub 上的個人帳戶的名稱。
  • TOKEN 替換為 personal access token (classic)。
  • NAMESPACE 替換為作為包限定范圍的個人帳戶或組織的名稱。

發布包

執行 dotnet pack 生成 nuget 包

然后執行以下命令將生成的 nuget 包發布到 GitHub Packages

dotnet nuget push ".\bin\Release\FluentConsole.Templates.1.1.0.nupkg" --api-key TOKEN --source github
  • TOKEN 是前面申請的

一切正常的話,可以看到以下輸出

正在將 FluentConsole.Templates.1.1.0.nupkg 推送到 'https://nuget.pkg.github.com/Deali-Axy'...
  PUT https://nuget.pkg.github.com/Deali-Axy/
  OK https://nuget.pkg.github.com/Deali-Axy/ 1129 毫秒
已推送包。

這時候就搞定了,訪問 https://github.com/Deali-Axy?tab=packages 可以看到已發布的 packages

將發布的包與代碼倉庫進行關聯

因為項目地址是 https://github.com/Deali-Axy/fluent-dotnet-console

而包名是 FluentConsole.Templates

這倆不一致,所以不會自動關聯,我們需要進行手動關聯

進入 package 詳情頁面:https://github.com/users/Deali-Axy/packages/nuget/package/FluentConsole.Templates

點擊下方的 Connect Repository 按鈕,選擇 fluent-dotnet-console 項目即可。

綁定之后在 package 的主頁可以看到 repository 的 README

在 repository 的右下角也可以看到這個 package

PS: GitHub 越來越好用了

參考資料

  • https://docs.github.com/zh/packages/working-with-a-github-packages-registry/working-with-the-nuget-registry

總結

以上是生活随笔為你收集整理的开发现代化的.NetCore控制台程序:(3)将nuget包发布到GitHubPackages的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。