2016-01-26 29 views
0

npm version:包目錄中碰到的版本,新的數據寫回的package.json如何在npm版本命令後自動將標籤推送到git?

運行此[..]如果在一個git回購運行,它也將創建一個版本提交和標籤。

如何配置NPM /包裹npm version命令自動推標籤與git ?,即等效:

npm version patch 
+ [email protected] 
git push origin v3.0.1 

NPM文檔推薦添加postversion scriptprackage.json,例如

"scripts": { 
    "postversion": "git push && git push --tags && rm -rf build/temp" 
} 

然而,這個建議僅適用於單一封裝,這是不好的,因爲它同步所有的標籤,而不僅僅是最後創建標籤。

回答

0

假設新標籤是當前版本中的唯一標籤,可能會起作用。

$ npm version patch 
$ tag=$(git tag --points-at HEAD) 
$ git push origin "$tag" 

否則,你可以嘗試從npm version patch捕獲(和解析)輸出這樣或許(假設輸出始終+ [email protected]和標籤總是v<part after @)。

$ tag=$(npm version patch 2>&1) 
$ tag=v${tag#*@} 
$ git push origin "$tag" 

您也可以嘗試在npm version patch調用之前抓住現有的標籤,然後對版本比較可用標記該名單之後,應該找到新的標籤,你可以把它。

相關問題