在我的團隊工作中,我們依賴兩個NuGet源:NuGet.org的公共包和官方文件服務器上的文件夾。NuGet中的包依賴性解決方案和命名衝突
這對我們很有效,但我認爲我們有一個潛在的問題。它看起來像NuGet基於包名和版本號來解析依賴關係。只有一種飼料在玩,這似乎不是一個問題。如果有多個Feed,則存在名稱衝突的風險。基於NuGet的解析規則,它看起來會選擇最高版本號,而不管飼料。
這讓我們有一點點。這種情況不太可能發生,但如果有人要在NuGet.org上發佈與我們的內部Feed具有相同包名的軟件包,我們最終可能會包含一個意外的軟件包。
我能想到的兩種方法來解決此問題:
1)拉動,我們靠到我們的私人飼料的軟件包。雖然這是可行的,但由於不斷將包更新下載到我們的私人訂閱源中的管理負擔,這並不是非常吸引人。
2)通過NuGet.org提要發佈佔位符包以保留包名。這看起來好像會起作用,但對我來說感覺就像是一個黑客。
有沒有更好的方法?
感謝您的幫助!
謝謝!產品建議和方法都非常有用! – Jacob