2014-04-15 3 views
1

노드에서 명령을 실행하고 싶습니다. git commit과 같은 명령을 실행하십시오. 나는 이렇게함으로써 할 수있다 :노드에서 콘솔을 제어하는 ​​자식 프로세스를 실행하십시오.

var exec = require("child_process").exec; 
exec("git commit", function(error, stderr, stdout) { 
    // Do stuff 
}); 

그러나 항상 멈춘다. 나는 이것이 git commit이 vim/emacs 등을 열기 위해 콘솔을 제어하기를 원하지만 노드가 그것을 허용하지 않기 때문이라고 가정합니다. 이 문제를 해결할 수있는 방법이 있습니까?

답변

2

exec 대신 spawn을 사용하여 stdio를 상속 할 수 있습니다.

'use strict'; 

var spawn = require('child_process').spawn; 
var commit = spawn('git', ['commit'], {stdio : 'inherit'}); 
관련 문제