思路
- 通过调用命令行工具,利用
svn info
得到所有的svn信息,然后提取版本号
异步获取 : node-cmd
- 包信息会作为回调函数的参数被返回(cbDataSvn)
var async = require('async');
var cmd = require('node-cmd');
cmd.get('svn info', function (err, cbDataSvn, stderr) {
if (err) {
throw new Error('获取svn版本号失败', err);
}
var svnVersion = cbDataSvn.split('\n')[6].match(/\d+/ig)[0]
console.log(svnVersion)
callback(null, svnVersion);
}
)
同步获取
- 这个真的费了我老大劲儿了,各种找第三方的npm包,什么
child-process, cross-spawn, node-cmd, spawn-sync
,都是异步的方法实现的,要不然就直接返回一个cmd进程包??(总之不是我们要的dos中输出的结果信息数据)