我有一个简单的函数来运行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'
添加回答
举报
0/150
提交
取消