裝載您自己的 NuGet 摘要
而不是向公眾開放套件,您可能只想向有限的對象發行套件,例如您的組織或工作群組。 此外,有些公司可能想要限制其開發人員可以使用的協力廠商程式庫,因此引導這些開發人員離開有限的套件來源,而不是離開 nuget.org。
針對所有這類用途,NuGet 以下列方式支援設定私用的套件來源:
- 本機摘要:套件只位於適當的網路檔案共用,最好使用
nuget init
和nuget add
,以建立階層式資料夾結構 (NuGet 3.3+)。 如需詳細資料,請參閱本機摘要。 - NuGet.Server:套件可以透過本機 HTTP 伺服器提供。 如需詳細資料,請參閱 NuGet.Server。
- NuGet 資源庫:套件裝載在使用 NuGet 資源庫專案的網際網路伺服器上 (github.com)。 NuGet 資源庫讓使用者能夠管理及使用功能,例如大量 web UI,在瀏覽器中搜尋和瀏覽套件,類似 nuget.org。
另外還有數個其他 NuGet 裝載產品,例如 Azure Artifacts 和 GitHub 套件登錄 ,可支持遠端私人摘要。 以下是這類產品的清單:
- JFrog 的 Artifactory。
- Azure Artifacts,也適用於 Team Foundation Server 2017 及更新版本。
- BaGet,這是建置於 ASP.NET Core 之上的 NuGet V3 伺服器開放原始碼實作
- BaGetter,這是BaGet的開放原始碼和社群導向分支
- Bytesafe 完全受控的套件和供應鏈安全性平臺
- Cloudsmith,完全受控的套件管理 SaaS
- Feedz.io 完全受控的套件管理 SaaS
- Gitea,開放原始碼、可自我裝載的 Git 服務支援 NuGet 作為 套件登錄
- GitHub 套件登錄
- GitLab 套件登錄
- JetBrains 空間
- LiGet,這是一個在 docker 中的 kestrel 上執行的 NuGet V2 伺服器開放原始碼實作
- MyGet
- 來自 Sonatype 的 Nexus 存放庫 OSS 。
- NuGet 伺服器 (開放原始碼),類似於 Inedo NuGet 伺服器的開放原始碼實作
- NuGet 伺服器,Inedo 社群專案
- Inedo 的 ProGet
- Sleet,這是開放原始碼 NuGet V3 靜態摘要產生器
- JetBrains 的 TeamCity。
不論套件的裝載方式為何,您都要將它們新增至 NuGet.Config
的可用來源清單中,才能存取它們。 如套件來源中所述在 Visual Studio 中完成,或從命令列使用 nuget sources
完成。 來源的路徑可以是本機資料夾的路徑名稱、網路名稱或 URL。