npm包发布时如何自动同步到github仓库?

npm包发布时如何自动同步到github仓库?

阅读 4.5k
4 个回答

我只用最简单的shelljs完成操作

"scripts": {
    "up": "yarn publish --patch",
    "postpublish": "node push.js"
}

push.js

var shell = require('shelljs');

shell.exec('git add .');
shell.exec(`git commit -m ${JSON.stringify(new Date().toLocaleString())}`);
shell.exec(`git push origin master`);

没有自动的功能吧,可以写个脚本同时执行publish和push 至于一步push可借助shelljs执行add、commit、push这些命令

你可以在prepublishOnly钩子中添加推送命令,都是shell命令,比如在发布前先执行git push和构建发布版本(比如发布命令名称是build-bundle):

"scripts": {
  "prepublishOnly": "git push && yarn build-bundle"
},

感觉真正实现的过程,跟你的想法恰恰相反,
真实情况应该是,将代码 pushgithub,通过 ci 持续集成工具(如:travisgithub actions)检测特定分支是否更新,然后再拉取分支自动化发布 npm package。

我这里有个就是这样做的可以参考,https://github.com/gauseen/tools

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题