2016-02-02 57 views
2

當一個人發出bower install mypackage --save,默認情況下,對於版本,涼亭採用最新的補丁版本波浪範圍選擇(〜)前綴:指示涼亭默認使用精確的版本,而不是範圍

"angular-ui-grid": "~3.1.0" 

因爲在現實中的補丁版本並造成重大更改(我們已經與我們的dependencies包現在經歷了這四次),我們想改變行爲,以便使用semver,而不是確切的版本:

"angular-ui-grid": "3.1.0" 

有沒有一種辦法自動執行s或設置確切匹配默認?我不能指望開發團隊的成員每次添加涼亭軟件包時都要記得刪除~

回答

3

你有read the documentation?它看起來像-E--save-exact是你需要的。

編輯:剛剛測試過它。這就是你需要的。然後,您的命令將

bower install mypackage --save-exact 

如果你想有一個是默認的,在你的主目錄和/或類似項目目錄創建一個.bowerrc

{ 
    "save-exact": true 
} 
+1

我只是讀文檔,並認爲我可能會補充說,鮑爾也有前/後安裝鉤子。您也可以運行一個腳本來檢查/刪除bower.json文件中的版本號,或者(如果幸運的話)強制將'-E'參數傳遞給bower。 –

+0

謝謝,Sunil。這實際上非常有幫助。不幸的是,當我們有完整的堆棧開發人員處理前端代碼時,相信開發人員要記住「--save-exact」是不現實的。 – core

+1

爲了強制執行'-E',如果你正在運行一個BASH shell,你可以很容易地使它成爲一個別名。像'alias bower ='bower -E''這樣的東西可以放在.bash_profile腳本中。或者全局更多,它可以放在'/ etc/profile'中 –