語義化版本
在使用pip(python),webpack(js)等包管理工具的時候,經常需要約束第三方軟體包的版本,比如在使用python的包管理工具pip的時候,常用做法是把第三方依賴包的版本都放入requirements.txt這個檔案中,這樣再次在其他環境安裝應用程式的時候就可以使用一行命令(pip install -r requirements.txt)自動下載相關依賴。而檔案中的內容就是這篇文章的重點:如何約束包的版本。
先看一個requirements.txt例子
django<2
ldap~=1.0.2
django_auth_ldap~=1.7
requests~=2.19
simplejson~=3.16
marathon~=0.10
ldap3~=2.5
我們可以清晰的看到左側是包(package)的名字,中間是約束規則,右側是版本號。
包的名字和版本不難理解,中間的這些符號是什麼意思呢?
就說一些簡單常用的把。
: 依賴包的版本大於某個版本
- <: 依賴包的版本小於某個版本
- ~=: 依賴包的版本約等於某個版本
- ==: 依賴包的版本等於某個版本
除了~=之外都不難理解,所謂的約等於是指大致的版本號滿足要求即可。
比如一個依賴包名為xxx的版本為2.5.2,如果你的約束條件是 xxx~=2.5,這樣也是滿足條件的。
如果懂得正規表示式的話就更好理解了,相當於2.5.*,意思是說只要是2.5開頭的版本都可以。
我說的這些是工作中用到的,僅僅是皮毛,想了解更多語義化版本的問題可以看下面的網站。
傳送門:語義化版本
相關文章
- 語義化版本 2.0.0
- 語義化版本慣例
- 語義化版本 2.0.0 - 版本控制規則
- 語義化版本控制模組-Semver
- Semver(語義化版本號)掃盲
- 開源專案中,如何遵循語義化版本控制
- HTML 語義化HTML
- html語義化HTML
- web語義化Web
- SAP Spartacus的釋出方式以及語義化版本管理機制
- NPM語義版本號解釋:~和^NPM
- HTML 語義化佈局HTML
- 聊聊前端語義化的今天前端
- HTML 語義化佈局概述HTML
- H5 語義化元素H5
- HTML5 語義化 - mainHTMLAI
- html語義化小記錄HTML
- web語義化之SEO和ARIAWeb
- 對html語義化的理解認知HTML
- HTML語義化,一圖以蔽之HTML
- Semantic UI:語義化前端開發框架UI前端框架
- 前端Html5(1)之html語義化前端HTML
- 前端面試題-HTML結構語義化前端面試題HTML
- 前端面試題-HTML語義化標籤前端面試題HTML
- HTML5語義化標籤總結HTML
- 語義化的HTML結構怎麼理解HTML
- 會說話的HTML——語義化雜談HTML
- go-carbon 2.1.6 版本釋出, 輕量級、語義化、對開發者友好的Golang時間處理庫Golang
- go-carbon 2.1.1 版本釋出, 輕量級、語義化、對開發者友好的golang時間處理庫Golang
- go-carbon 2.2.0 版本釋出, 輕量級、語義化、對開發者友好的Golang時間處理庫Golang
- go-carbon 2.1.9 版本釋出, 輕量級、語義化、對開發者友好的Golang時間處理庫Golang
- go-carbon 2.1.8 版本釋出, 輕量級、語義化、對開發者友好的Golang時間處理庫Golang
- go-carbon 2.1.7 版本釋出, 輕量級、語義化、對開發者友好的Golang時間處理庫Golang
- phpstudy自定義版本PHP
- 【譯】停止濫用div!HTML語義化介紹HTML
- 【譯】停止濫用div! HTML語義化介紹HTML
- NPM酷庫043:joi,語義化模式驗證NPM模式
- HTML5新新增的語義化標籤HTML