gitlab-ci执行git指令报错?

.gitlab-ci.yml 文件上配置了手动触发的流水线,手动执行某个nodejs脚本,脚本内容大致如下:

const exec = require('child_process').exec;
exec(`git log --oneline --no-merges --pretty=format:"- %h %s" v2.0.29...head`, (error, stdout, stderr) => {
    console.log(stdout || stderr);
});

执行结果如下:

git log --oneline --no-merges --pretty=format:"- %h %s" v2.0.29...head
fatal: ambiguous argument 'v2.0.29...head': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'

期望结果(直接复制指令在本地端可以得到如下结果)如下:

$ git log --oneline --no-merges --pretty=format:"- %h %s" v2.0.29...head
- da247d3 [fix][release] xxxx
- 733048f [update][release] xxxxxxxx
阅读 2.5k
1 个回答

……,虽然不知道在哪一步导致head指向出了问题,但是去掉head,执行就正常了

const exec = require('child_process').exec;
exec(`git log --oneline --no-merges --pretty=format:"- %h %s" v2.0.29...`, (error, stdout, stderr) => {
    console.log(stdout || stderr);
});

在执行该指令前,有做过切分支的操作 git fetch origin test-develop

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