如果有人知道/进入npm包使用git命令,我就会徘徊。 我有一个nodejs项目,我想要执行以下命令:
我尝试了一些npm包但没有任何成功。 任何帮助将不胜感激 感谢
答案 0 :(得分:15)
使用外部包: 您可以使用shelljs npm包
不使用外部包:利用nodejs child_process
模块。以下是实施
1.exec_process.js
var exec = require('child_process').exec;
var result = function(command, cb){
var child = exec(command, function(err, stdout, stderr){
if(err != null){
return cb(new Error(err), null);
}else if(typeof(stderr) != "string"){
return cb(new Error(stderr), null);
}else{
return cb(null, stdout);
}
});
}
exports.result = result;
2.temp.sh
#! /usr/bin/bash
pwd
git --version
3.app.js
var execProcess = require("./exec_process.js");
execProcess.result("sh temp.sh", function(err, response){
if(!err){
console.log(response);
}else {
console.log(err);
}
});
要运行该应用程序,您可以尝试node app.js
输出:
/根
git版本1.8.1.2
同样,您可以在shell脚本文件中添加任何命令并使用node运行它。演示和源代码发布在runnable。
建议检查git-extras它通过命令行覆盖git的所有用例。
答案 1 :(得分:0)
我认为任何模块都不支持PR,但对于克隆/分支管理,请尝试gift
:
https://www.npmjs.com/package/gift
此模块似乎具有最多git功能。对于PR,我建议创建一个问题和/或为这个很棒的模块做出贡献: