2 .\" Title: git-remote-fd
3 .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
4 .\" Generator: DocBook XSL Stylesheets v1.79.2 <http://docbook.sf.net/>
7 .\" Source: Git 2.47.0.rc0.18.ge9356ba3ea
10 .TH "GIT\-REMOTE\-FD" "1" "2024-09-30" "Git 2\&.47\&.0\&.rc0\&.18\&.ge" "Git Manual"
11 .\" -----------------------------------------------------------------
12 .\" * Define some portability stuff
13 .\" -----------------------------------------------------------------
14 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15 .\" http://bugs.debian.org/507673
16 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
17 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
20 .\" -----------------------------------------------------------------
21 .\" * set default formatting
22 .\" -----------------------------------------------------------------
23 .\" disable hyphenation
25 .\" disable justification (adjust text to left margin only)
27 .\" -----------------------------------------------------------------
28 .\" * MAIN CONTENT STARTS HERE *
29 .\" -----------------------------------------------------------------
31 git-remote-fd \- Reflect smart transport stream back to caller
34 "fd::<infd>[,<outfd>][/<anything>]" (as URL)
37 This helper uses specified file descriptors to connect to a remote Git server\&. This is not meant for end users but for programs and scripts calling git fetch, push, or archive\&.
39 If only <infd> is given, it is assumed to be a bidirectional socket connected to a remote Git server (git\-upload\-pack, git\-receive\-pack, or git\-upload\-archive)\&. If both <infd> and <outfd> are given, they are assumed to be pipes connected to a remote Git server (<infd> being the inbound pipe and <outfd> being the outbound pipe)\&.
41 It is assumed that any handshaking procedures have already been completed (such as sending service request for git://) before this helper is started\&.
43 <anything> can be any string\&. It is ignored\&. It is meant for providing information to the user in the URL in case that URL is displayed in some context\&.
44 .SH "ENVIRONMENT VARIABLES"
48 If set, prints debugging information about various reads/writes\&.
52 \fBgit fetch fd::17 master\fR
54 Fetch master, using file descriptor #17 to communicate with git\-upload\-pack\&.
57 \fBgit fetch fd::17/foo master\fR
62 \fBgit push fd::7,8 master (as URL)\fR
64 Push master, using file descriptor #7 to read data from git\-receive\-pack and file descriptor #8 to write data to the same service\&.
67 \fBgit push fd::7,8/bar master\fR
73 \fBgitremote-helpers\fR(7)
76 Part of the \fBgit\fR(1) suite