1# NAME
2
3git-annex multicast - multicast file distribution
4
5# SYNOPSIS
6
7git annex multicast [options]
8
9# DESCRIPTION
10
11Multicast allows files to be broadcast to multiple receivers,
12typically on a single local network.
13
14The uftp program is used for multicast.
15<http://uftp-multicast.sourceforge.net/>
16
17# OPTIONS
18
19* `--gen-address`
20
21  Generates a multicast encryption key and stores a corresponding multicast
22  address to the git-annex branch.
23
24* `--send [file]`
25
26  Sends the specified files to any receivers whose multicast addresses
27  are stored in the git-annex branch.
28
29  When no files are specified, all annexed files in the current directory
30  and subdirectories are sent.
31
32  The [[git-annex-matching-options]](1) can be used to control which files to
33  send. For example:
34
35	git annex multicast send . --not --copies 2
36
37* `--receive`
38
39  Receives files from senders whose multicast addresses
40  are stored in the git-annex brach.
41
42  As each file is received, its filename is displayed. This is the filename
43  that the sender used; the local working tree may use a different name
44  for the file, or not contain a link to the file.
45
46  This command continues running, until it is interrupted by you pressing
47  ctrl-c.
48
49  Note that the configured annex.diskreserve is not honored by this
50  command, because `uftpd` receives the actual files, and can receive
51  any size file.
52
53* `--uftp-opt=option` `-Uoption`
54
55  Pass an option on to the uftp/uftpd command. May be specified multiple
56  times.
57
58  For example, to broadcast at 50 Mbps:
59
60	git annex multicast send -U-R -U50000
61
62* Also the [[git-annex-common-options]](1) can be used.
63
64# EXAMPLE
65
66Suppose a teacher wants to multicast files to students in a classroom.
67
68This assumes that the teacher and students have cloned a git-annex
69repository, and both can push changes to its git-annex branch,
70or otherwise push changes to each-other.
71
72First, the teacher runs `git annex multicast --gen-address; git annex sync`
73
74Next, students each run `git annex multicast --gen-address; git annex sync`
75
76Once all the students have generated addresses, the teacher runs
77`git annex sync` once more. (Now the students all have received the
78teacher's address, and the teacher has received all the student's addresses.)
79
80Next students each run `git annex multicast --receive`
81
82Finally, once the students are all listening (ahem), teacher runs
83`git annex multicast --send`
84
85# SEE ALSO
86
87[[git-annex]](1)
88
89uftp(1)
90
91uftpd(1)
92
93# AUTHOR
94
95Joey Hess <id@joeyh.name>
96
97Warning: Automatically converted into a man page by mdwn2man. Edit with care.
98