Azure Artifacts
其實就是你自己的包管理服務。就好比現有的 maven(java)、nuget(.net)、pip(python)、npm(javascript) 等等這種包管理服務。
很多時候企業級的包,不會也不可能讓你放到公共平臺上,所以企業內部需要搭建自己的包管理平臺。因此 Azure Artifacts 就是這麼一個服務平臺。
什麼叫包管理
包(Artifacts),正確翻譯叫工件,通俗地說就是你編譯好的類庫、框架、中間件編譯成功後的包,比如 jar,dll 等等。試想一下,你有5個項目用到了某些類庫或框架,你也不可能每個項目拷貝一份源代碼吧?
早十年前,我們需要通過 CV(Ctrl+C Ctrl+V)的方式,從服務器或者共享文件夾裏拷貝這些包到本地,然後添加引用,這樣我們纔可以用到包裏的函數、變量等等,當然這樣的做法顯而易見的就是版本管理,有可能同一個項目下,張三引用的包和李四引用的包,版本就不同,因爲這樣的問題當年肯定很多人抓狂了不止一次。
因此就有了包管理平臺,只要把包上傳到該平臺,源頭都一樣,自然版本就一樣了。而且包會在你代碼編譯的時候,自動去下載相關的包到本地(本地緩存優先),完全省去了包版本還有地址的煩惱。
爲什麼會搭建自己的包管理平臺
-
比如企業內部統一進行所有包的版本管理,包括市面上流行或者官方出的包版本,這樣做是爲了開發的規範,同樣也是爲了避免糾紛,減少企業的損失。
-
對於網絡有限制的公司,有可能是封閉式開發的,不讓上公網,或者也有很多公司對公網有所限制,下載速度很呵呵,所以企業內部自己搭建一個包管理平臺就很有用了。
如何使用
如果沒有,則右側會顯示一個添加按鈕
源名稱
這個你隨意咯,取名字而已。
可見性
這還用說嗎?權限罷了,誰有權限看到這個包源的列表。
來自公告源(nuget.org、npmjs.com)的包
舉個例子,你的包比如叫 “SupreMvc.Core”,它有一個依賴叫 “Microsoft.AspNetCore.Mvc” 的包,因此
- 選擇第一項,在下載 SupreMvc.Core 包時,發現有其他依賴你本地沒有,則會從官方雲平臺的公網下載相關依賴的包。(沒有找公網索取)
- 選擇第二項,就是隻看你包源裏有沒有依賴包,沒有就無法下載,編譯的時候就會報錯了。(家裏沒有,那就沒有了,其他家有也跟我沒關係)
創建好了就會這樣顯示
什麼都沒有?急什麼,你還沒有發佈包呢。
點擊“連接源”
微軟其實已經教你怎麼做了,我們就跟着做就好了。
用 nuget 推送包
按着他的步驟,在命令行敲就行了。
這一個模塊相對於其他的比較簡單,也很容易掌握。