node package manager


a r/w stream that wraps a r/w stream and formats the data according to the git transfer protocol


wrap a r/w stream in this transport r/w stream for transforming writes into valid git packet lines, and reads from git packet lines into JS objects.

var net = require('net')
  , transport = require('git-transport-protocol')
  , client
  , tcp
tcp = net.connect({host: '', port: 9418})
client = transport(tcp)
client.on('data', function(data) {
  // data will be JS objects 
// start a fetch 
client.write('git-upload-pack /chrisdickinson/plate.git\\0')

wrap any readable/writable stream with git-packet-line senders and receivers.

enter or exit "raw" mode -- this makes writes skip the pkt-write portion of the stream and go directly to the connection.

this is useful for, e.g., sending packfile data.