在公用摘要中使用上游來源
Azure Artifacts 可讓開發人員從單一摘要管理其相依性。 您可以使用上游來源,從摘要和公用登錄取用套件,例如 NuGet.org 和 npmjs.com。 在本文中,您將學會如何:
- 建立公用摘要
- 啟用上游來源
- 新增上游來源
必要條件
Azure DevOps 專案。 如果您還沒有專案,請建立新的專案 。
將您的項目可見度設定為 公用。
建立公用摘要
公用摘要是公用專案中的專案範圍摘要。 公用摘要會繼承主控專案的可見性設定。
登入您的 Azure DevOps 組織,然後選取您的公用專案。
選取 [ 成品],然後選取 [ 建立摘要]。
為您的摘要指定 [ 名稱],然後選取 [專案:PublicProject][建議] 作為其範圍。
完成後,選取 [建立]。
重要
公用摘要不支援上游至私人 Artifacts 摘要。 如果您使用公用 Azure Artifacts 摘要,則只能上游至公用登錄(NuGet.org、npmjs)或其他 公用 Azure Artifacts 摘要。
新增上游來源
登入您的 Azure DevOps 組織,然後選取您的公用專案。
選取 [ 成品],然後選取您的公用摘要。
選取齒輪圖示 以存取您的 摘要設定。
選取 [ 上游來源],然後選取 [ 新增上游]。
選取上游來源 類型。 在此範例中,我們會將 NuGet.org 新增為上游來源。
設定來源,然後在完成時選取 [ 新增 ]。
選取 [ 儲存 ] 以儲存新的上游來源。
重要
需要套件鎖定檔案 ,才能將 NuGet 和 Dotnet 套件從上游來源儲存到公用摘要。
還原套件
在項目目錄中執行下列命令來還原套件:
注意
您必須是 摘要和上游讀取器(共同作業者)或更高版本, 才能從上游安裝新的套件版本。 匿名使用者只能安裝存在於其摘要中的套件。
Q&A
問:我嘗試還原我的套件,但我持續收到 401 未經授權的錯誤?
摘要的內容只能由具有適當摘要許可權的已驗證和授權身分識別來變更。 這包括將套件儲存至上游來源的摘要。 未經驗證的(匿名)用戶可以 下載已儲存 到摘要中的套件,但無法將上游的新套件儲存到摘要中。
項目的維護人員應該將所有必要的套件版本儲存到公用摘要中。 這可以藉由使用身分識別來還原專案, 以 在提示時提供摘要的認證, 並確保 使用的身分識別具有 公用摘要和上游讀取者(共同作業者) 或更高許可權。
如果針對專案還原套件的匿名使用者被認證要求重複封鎖(401 回應),下列方法將會減少或消除問題:
請避免在專案組態中使用套件版本範圍。 明確套件版本可確保封裝用戶端只會要求所需的確切版本。
支援時,請利用封裝生態系統的鎖定檔案,讓封裝用戶端只會在還原/安裝作業期間要求專案所需的特定版本。
問:我正嘗試使用Visual Studio還原我的套件,但我注意到它們正從不同的來源提取?
答:請確定Visual Studio使用 nuget.config 檔案中所參考的來源,而不是來自本機 NuGet 套件管理員。 如需詳細資訊,請參閱套件來源。
您也可以執行下列命令,使用 NuGet CLI 強制 NuGet 使用組態檔中的來源:
nuget restore -config <PATH_TO_NUGET_CONFIG_FILE>