当我在Gitlab上进行合并时,我想编辑我的包版本。我也试过这样对待赫斯基,但没有用。
{
"hooks":{
"pre-commit": "npm run lint:fix",
"post-merge": "(git-branch-is staging && npm version minor || git-branch-is master && npm version major) && git add . && git commit -m "new version"",
}
}
我尝试用Gitlab-CI像这样
enable_merge:
stage: staging_deploy
only:
- staging
script:
- npm version minor
我得到一个错误信息
$ npm version minor
v0.5.0
npm ERR! code 128
npm ERR! Command failed: git commit -m 0.5.0
npm ERR!
npm ERR! *** Please tell me who you are.
npm ERR!
npm ERR! Run
npm ERR!
我不能在local上这样做,因为分支staging和master是受保护的
因为这是在CI中运行的,git
可能没有设置它的配置,特别是在您提交时它为作者使用的user.name
和user.email
。我将在before_script
步骤中添加这些:
enable_merge:
stage: staging_deploy
only:
- staging
before_script:
- git config --global user.name "Gitlab CI"
- git config --global user.email "an-email-address@example.com"
script:
- npm version minor