[英]Converting git log output into Json array not working(Node.js)
我正在尝试获取所有分支的日志,然后将其保存在Json文件中。 我的代码当前不在json文件中输出数组。 我该怎么做呢? 总的来说,我对node.js和Javascript非常陌生。
var sys = require('sys')
var exec = require('child_process').exec;
var branchesObj;
function puts(error, stdout, stderr) {
console.log(stdout)
var fs = require('fs');
console.log("Creating branches log ...");
function getBranches(stdout) {
branchesObj = JSON.parse(branches);
branches = JSON.stringify(stdout.split(/\r?\n/));
var lines = branches.toString().split('commit');
var results = new Array();
lines.forEach(function(line) {
var parts = line.split('/\r?\n/');
results[parts[0]] = parts[1];
});
console.log(results);
fs.writeFile('Branches.json', results);
};
fs.writeFile('Branches.json', stdout);
}
exec("git branch--all", puts);
目前,这是我的JSON文件的样子,并且数组周围没有方括号,例如Branches = [{}]:
* master
remotes/origin/38563
remotes/origin/53035
remotes/origin/AVA_SAMPSON
remotes/origin/AlexTMP
这就是您想要的:
var exec = require('child_process').exec;
var fs = require('fs');
function puts(error, stdout, stderr) {
var branches = JSON.stringify(stdout.split(/\r?\n/).map(function(e) { return e.substring(2);}).filter(function(e) { return e; }));
fs.writeFile('Branches.json', branches);
}
exec("git branch --all", puts);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.