summaryrefslogtreecommitdiff
path: root/Documentation/git-remote-fd.txt
blob: bcd37668e3508462881c12bdda5f6eed48072bf8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
git-remote-fd(1)
================
 
NAME
----
git-remote-fd - Reflect smart transport stream back to caller
 
SYNOPSIS
--------
"fd::<infd>[,<outfd>][/<anything>]" (as URL)
 
DESCRIPTION
-----------
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.
 
If only <infd> is given, it is assumed to be a bidirectional socket connected
to remote Git server (git-upload-pack, git-receive-pack or
git-upload-achive). 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.
 
It is assumed that any handshaking procedures have already been completed
(such as sending service request for git://) before this helper is started.
 
<anything> can be any string. It is ignored. It is meant for providing
information to user in the URL in case that URL is displayed in some
context.
 
ENVIRONMENT VARIABLES
---------------------
GIT_TRANSLOOP_DEBUG::
	If set, prints debugging information about various reads/writes.
 
EXAMPLES
--------
`git fetch fd::17 master`::
	Fetch master, using file descriptor #17 to communicate with
	git-upload-pack.
 
`git fetch fd::17/foo master`::
	Same as above.
 
`git push fd::7,8 master (as URL)`::
	Push master, using file descriptor #7 to read data from
	git-receive-pack and file descriptor #8 to write data to
	same service.
 
`git push fd::7,8/bar master`::
	Same as above.
 
GIT
---
Part of the linkgit:git[1] suite