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

npm install git-transport-protocol
1 downloads in the last day
1 downloads in the last week
30 downloads in the last month


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')


transport(connection) -> client

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

client.setRawMode([true]) -> rawmode boolean

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.



npm loves you