版本號你們都很熟悉,每次項目上線都須要升級版本,可是你知道如何自動升級嗎?讓咱們一塊兒來看一下吧前端
什麼是版本號?
git
答: 你們打遊戲的時候都有遇到過升級程序,給一個遊戲升級,那這個升級就會生成新的版本號,好比:0.0.1升級以後就變成了0.0.2,這就是版本號.
如何生成一個版本號?
npm
答: 在package.json中有一個"version"屬性,它就表明着版本號, 每次修改了代碼,上線就須要更改他,可是通常咱們不須要更改, 公司的git版本管理工具會生成你的版本號,可是咱們作本身的項目怎麼辦? 每次都要改這個麼?不,能夠自動生成.快來看看吧
幾個升級版本的代碼,以及表達的意思
json
答: 1. npm version major | minor | patch 2. 咱們知道版本是由A.B.C的樣子生成的,每個都有相應的代碼控制 A對應着major,B對應着minor,C對應着patch,固然也有特殊狀況 好比你會滾了代碼,這裏先不考慮....,這裏面的代碼會對應升級相應的版本號
ok咱們來配置,咱們瞭解到這裏,讓咱們的項目每次自動生成版本號
前端工程師
首先在你的項目中建立一個`deploy.sh`文件,和package.json同級 而後在文件裏面加入以下代碼: npm version patch git push 接下來,提交代碼,運行以下代碼 "git add ." "git commit ." "add deploy" ":wq" "sh ./deploy.sh"(千萬不能多個空格)
那不對啊,這每次都只能升級小版本啊,我要升級中間的怎麼辦?
工具
咱們來改變一下配置,改爲`npm version $1`,這個$1,就是給他傳一個參數 怎麼傳?這也能傳?YES 咱們再來執行一下,先提交咱們代碼,而後執行下面的代碼 "sh ./deploy.sh minor" 咱們提高了中間的版本,而且push了
嘿嘿嘿,這裏有個小小的問題,首先當咱們更改代碼的時候,直接運行"sh ./deploy.sh minor"會報錯,可是他仍是會,push
spa
咱們來解決這樣的問題code
將代改寫成以下代碼: `npm version $1 && git push` 這段代碼的意思很明顯了吧,就是說前面錯誤,後面也不會執行
總結:blog