如何在npm版本中运行脚本

时间:2015-07-01 11:52:57

标签: javascript npm

有没有办法在npm version期间运行脚本,即在版本号增加之后但在创建和推送git标签之前运行?

2 个答案:

答案 0 :(得分:2)

您可以创建一个version脚本,一旦包版本增加,但在提交和标记之前,将调用该脚本。

"scripts": {
  "version": "./your_script"
}

根据npm version文档检查执行顺序。下面你可以看到有趣的摘录,特别是第4点:

  
      
  1. 检查以确保git工作目录在我们获得之前是干净的   开始。您的脚本可能会在以后的步骤中将文件添加到提交中。   如果设置了--force标志,则跳过此步骤。
  2.   
  3. 运行preversion脚本。这些脚本可以访问package.json中的旧版本。典型用途是在部署之前运行完整的测试套件。应该使用git add。
  4. 显式添加要添加到提交的任何文件   
  5. 按要求在package.json中进行凹凸版本(补丁,次要,专业等)。
  6.   
  7. 运行版本脚本。这些脚本可以访问package.json中的新版本(例如,它们可以将它合并到生成的文件中的文件头中)。同样,脚本应该使用git add。
  8. 将生成的文件显式添加到提交中   
  9. 提交和标记。
  10.   
  11. 运行postversion脚本。使用它来清理文件系统或自动推送提交和/或标记。
  12.   

此功能是在npm v2.13.0中引入的。有关详细信息,请参阅version: allow scripts to add files to the commit

答案 1 :(得分:0)

在此页面https://docs.npmjs.com/misc/scripts中,您可以使用一些脚本:

  
      
  • preversion,version:在碰撞包版本之前运行。
  •   
  • postversion:运行AFTER碰撞包版本。
  •   

有了这个,您可以在package.json中添加其中一个脚本:

"scripts": { "postversion" : "./your_script" }

此外,您可以查看钩子:https://docs.npmjs.com/misc/scripts#hook-scripts