为了账号安全,请及时绑定邮箱和手机立即绑定

Node.js 生成参数导致 git update-index 失败

Node.js 生成参数导致 git update-index 失败

慕侠2389804 2022-06-09 16:13:28
我有一个简单的函数来运行git update-index。exports.gitUpdateIndex = (path, pattern) => {  return new Promise((resolve, reject) => {    const error = [];    const opt = {      cwd: path    };    const process = spawn("git", ["update-index", "--chmod=+x", pattern], opt);    process.on("close", () => {      if (error.length > 0) {        reject(error);      }      resolve();    });    process.stderr.on("data", data => error.push(data.toString().trim()));  });};我试着这样称呼它——await gitUpdateIndex(dirPath, "./*.sh");但这会引发错误,例如-[  "Ignoring path *.sh\nfatal: git update-index: cannot chmod +x '*.sh'"]编辑:似乎将绝对路径传递给函数会修复它而不是 unix glob 模式。await gitUpdateIndex(dirPath, "C:\\test\\hello.sh");
查看完整描述

1 回答

?
开满天机

TA贡献1786条经验 获得超13个赞

您必须将每个参数定义为单独的数组元素:

spawn("git", ['update-index', '--chmod=+x', pattern], opt)

你目前正在做相当于

git 'update-index --chmod=+x ./*.sh'


查看完整回答
反对 回复 2022-06-09
  • 1 回答
  • 0 关注
  • 88 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信