Node.jsでこれを実行したいと思います。
git archive remote=git@example.com:repo.git HEAD | tar -x - -C /path/to/extracted/
だから、私は次のようなコードを書きました:
git = spawn 'git', ['archive', "--remote=git@example.com:repo.git", 'HEAD']
tar = spawn 'tar', ['-x', '-', '-C /path/to/extracted']
git.stderr.on 'data', (data) ->
console.log "git error: #{data}"
git.stdout.on 'data', (data) ->
tar.stdin.write data
tar.stderr.on 'data', (data) ->
console.log "tar error: #{data}"
git.on 'exit', (code) ->
console.log "git process done with code #{code}"
tar.on 'exit', (code) ->
console.log "tar process done with code #{code}"
しかし、これは私が期待したようには機能しません。これを正しく機能させるには何を変更する必要がありますか?
前もって感謝します。
アップデート
-
適切なコマンドは実際にはとの間-x
で必要ありません-C
git archive remote=git@example.com:repo.git HEAD | tar -x -C /path/to/extracted/