Я использую NPM ShellJS для выполнения следующей команды Git внутри скрипта Node:
git for-each-ref --sort=v:refname --format "tag: %(refname:strip=2) message: %(subject) date: %(authordate:iso)" refs/tags
Если я запускаю эту команду в обычном окне командной строки, она отлично работает и приводит к выводу, подобному следующему:
tag: v2.20.0-rc0 message: Git 2.20-rc0 date: 2018-11-18 18:25:38 +0900
tag: v2.20.0-rc1 message: Git 2.20-rc1 date: 2018-11-21 23:25:15 +0900
tag: v2.20.0-rc2 message: Git 2.20-rc2 date: 2018-12-01 21:45:08 +0900
Однако, когда я запускаю эту команду в Node с помощью ShellJS, содержимое stdout
представляет собой пустую строку:
const shell = require('shelljs');
let tagInfo = shell.exec(`
git for-each-ref --sort=v:refname --format "tag: %(refname:strip=2) message: %(subject) date: %(authordate:iso)" refs/tags
`);
console.log('tagInfo', tagInfo.stdout); // empty string
Как получить вывод, как указано, вместо пустой строки?