summaryrefslogtreecommitdiff
path: root/mergetools/bc3
diff options
context:
space:
mode:
authorLibravatar Florian Achleitner <florian.achleitner.2.6.31@gmail.com>2012-09-19 17:21:19 +0200
committerLibravatar Junio C Hamano <gitster@pobox.com>2012-10-07 14:10:16 -0700
commitbfc366d9315561166861bc97a395afc054c976c3 (patch)
tree0ceb013859d4da4ad65dc52eb56da5a1f655c36d /mergetools/bc3
parentAdd argv_array_detach and argv_array_free_detached (diff)
downloadtgif-bfc366d9315561166861bc97a395afc054c976c3.tar.xz
Connect fast-import to the remote-helper via pipe, adding 'bidi-import' capability
The fast-import commands 'cat-blob' and 'ls' can be used by remote-helpers to retrieve information about blobs and trees that already exist in fast-import's memory. This requires a channel from fast-import to the remote-helper. remote-helpers that use these features shall advertise the new 'bidi-import' capability to signal that they require the communication channel. When forking fast-import in transport-helper.c connect it to a dup of the remote-helper's stdin-pipe. The additional file descriptor is passed to fast-import via its command line (--cat-blob-fd). It follows that git and fast-import are connected to the remote-helpers's stdin. Because git can send multiple commands to the remote-helper on it's stdin, it is required that helpers that advertise 'bidi-import' buffer all input commands until the batch of 'import' commands is ended by a newline before sending data to fast-import. This is to prevent mixing commands and fast-import responses on the helper's stdin. Signed-off-by: Florian Achleitner <florian.achleitner.2.6.31@gmail.com> Acked-by: David Michael Barr <b@rr-dav.id.au> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'mergetools/bc3')
0 files changed, 0 insertions, 0 deletions