簡體   English   中英

Nuget 中介用於更快的更新

[英]Nuget intermediary for faster updates

假設我的公司創建:

  1. 商業產品“產品”
  2. 一個免費的開源庫“圖書館”

“圖書館”發布在 Nuget 上供其他人使用。

產品”也通過 nuget 引用使用“庫”

有時我們會在“庫”中發現一個緊急錯誤,我們需要修復並發布“庫”“產品”的更新。

我們修復了這個錯誤,將修復發布到 Nuget.... aaaahnd 然后我們必須等待幾個小時,直到 nuget 發布修復版本。

團隊通常如何優雅地解決這個問題?

基本上有幾種方法可以解決此類問題。 但是,我們在項目中使用的方式是不使用 NuGet 來處理此類依賴項。 我們將此類“庫”放在單獨的項目中,即“產品”存儲庫的一部分,或者“產品”存儲庫使用git-modules引用此“庫” 在這種情況下,產品的構建過程將是:

  1. 構建“庫” ->在 nuget 的發布過程之后在單獨的作業中自動啟動(談到 Jenkins 上的自動化構建)
  2. 使用已構建的“庫”構建“產品
  3. 發布“產品”

在這個 piplene 中,諸如“僅構建和發布庫”之類的其他構建選項將對您的構建腳本有所幫助。

如果您將 git 子模塊稱為“庫” ,那么與庫構建和發布相關的所有人員都可以放置在那里。 所以我建議為此使用 git 子模塊。 此外,使用 git 子模塊,可以更輕松地管理您想在“產品”中使用的“庫”版本

您可以在雲端或公司網絡中創建自己的“Nuget package 源” 並且,在構建您的“圖書館”時,將其發布在兩個來源中:nuget.org 和您自己的。 因此,在您的內部項目中,您將使用 package 源並能夠在發布后立即接收更新,但此“庫”的其他用戶將能夠通過常規 nuget.org 將其包含在他們的項目中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM