Nx release命令无法自动推送发布提交及标签,如何配置实现自动推送?
Nx release命令无法自动推送发布提交及标签,如何配置实现自动推送?
你好呀!我来帮你解决这个Nx release自动推送的问题~
你遇到的情况确实是nx release这个复合命令默认不会自动推送提交和标签,但其实有两种简单的方法可以实现自动推送,不用再手动追加git push --follow-tags啦:
方法一:运行命令时直接添加--git-push参数
虽然nx release是整合了版本更新、生成 changelog 等步骤的复合命令,但它支持传递子命令的参数。你只需要在原来的命令后面加上--git-push,就能让Nx在完成版本提交和打标签后自动推送到远程仓库:
npx nx release --skip-publish --git-push
方法二:在nx.json里配置默认自动推送
如果不想每次运行命令都手动加参数,可以直接在你的nx.json的release.version部分添加"gitPush": true配置,这样以后每次执行nx release都会自动推送:
修改后的nx.json相关部分如下:
{ "$schema": "./node_modules/nx/schemas/nx-schema.json", "targetDefaults": { "build": { "dependsOn": ["^build"], "outputs": ["{projectRoot}/dist"], "cache": true } }, "tasksRunnerOptions": { // ... }, "release": { "projects": ["*"], "projectsRelationship": "independent", "version": { "conventionalCommits": true, "gitPush": true }, "changelog": { "projectChangelogs": true } } }
配置完成后,再运行npx nx release --skip-publish,Nx就会自动帮你把版本提交和标签推送到远程仓库了。
原理其实很简单:nx release会依次执行release version、release publish等子步骤,而--git-push参数或者配置里的gitPush: true,都是作用于release version这个子步骤,让它在完成版本更新、提交和打标签后自动执行推送操作。
备注:内容来源于stack exchange,提问作者johannchopin
相关产品推荐
相关产品推荐

