summaryrefslogtreecommitdiff
path: root/doc/git-annex-remotedaemon.mdwn
blob: 71dd32d309dbb1fe55507191bcdf4114913c3441 (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
# NAME

git-annex remotedaemon - persistent communication with remotes

# SYNOPSIS

git annex remotedaemon

# DESCRIPTION

The remotedaemon provides persistent communication with remotes.
This is useful to detect when remotes have received git pushes, so the
changes can be promptly fetched and the local repository updated.

The assistant runs the remotedaemon and communicates with it on
stdio using a simple textual protocol.

Several types of remotes are supported:

For ssh remotes, the remotedaemon tries to maintain a connection to the
remote git repository, and uses git-annex-shell notifychanges to detect
when the remote git repository has changed, and fetch the changes from
it. For this to work, the git remote must have [[git-annex-shell]](1)
installed, with notifychanges support. The first version of git-annex-shell
that supports it is 5.20140405.

For tor-annex remotes, the remotedaemon runs as a tor hidden service,
accepting connections from other nodes and serving up the contents of the
repository. This is only done if you first run `git annex enable-tor`.

# OPTIONS

* `--foreground`

Don't fork to the background, and communicate on stdin/stdout using a
simple textual protocol. The assistant runs the remotedaemon this way.

Commands in the protocol include LOSTNET, which tells the remotedaemon
that the network connection has been lost, and causes it to stop any TCP
connctions. That can be followed by RESUME when the network connection
comes back up.

# SEE ALSO

[[git-annex]](1)

[[git-annex-assistant]](1)

[[git-annex-enable-tor]](1)

# AUTHOR

Joey Hess <id@joeyh.name>

Warning: Automatically converted into a man page by mdwn2man. Edit with care.