diff --git a/src/git-remote-pear.js b/src/git-remote-pear.js index 66573ac..cba4e9c 100755 --- a/src/git-remote-pear.js +++ b/src/git-remote-pear.js @@ -121,11 +121,10 @@ async function talkToGit (refs, drive, repoName, rpc) { const publicKey = home.readPk() const res = await rpc.request(command, Buffer.from(`${publicKey}/${repoName}:${dst}`)) - console.error('killing', daemonPid) process.kill(daemonPid || home.getDaemonPid()) - console.error('killed') home.removeDaemonPid() + process.stdout.write(res.toString()) process.stdout.write('\n\n') process.exit(0) } else if (chunk && chunk.search(/^list/) !== -1) { // list && list for-push diff --git a/src/rpc.js b/src/rpc.js index 423fc09..39b67c3 100644 --- a/src/rpc.js +++ b/src/rpc.js @@ -44,24 +44,26 @@ module.exports = class RPC { pushHandler (req) { // TODO: check ACL - // XXX: from the inside of a bare repo: - // git fetch url : + // collect stdout to buffer and return it + // const process = spawn('git', ['fetch', url, `${branch}:${branch}`], { env: { GIT_DIR: getCodePath(name) } }) console.error('req', req.toString()) console.error('pushHandler not implemented') } forcePushHandler (req) { - // TODO: check ACL - // XXX: from the inside of a bare repo: - // git reset --hard url + // TODO: + // check ACL + // collect stdout to buffer and return it + // const process = spawn('git', ['reset', '--hard', url, branch], { env: { GIT_DIR: getCodePath(name) } }) console.error('req', req.toString()) console.error('forcePushHandler not implemented') } deleteBranchHandler (req) { - // TODO: check ACL - // XXX: from the inside of a bare repo: - // git push -d pear + // TODO: + // check ACL + // collect stdout to buffer and return it + // const process = spawn('git', ['branch', '-d', branch], { env: { GIT_DIR: getCodePath(name) } }) console.error('req', req.toString()) console.error('deleteBranchHandler not implemented') }