diff options
author | 2017-03-30 19:32:58 -0400 | |
---|---|---|
committer | 2017-03-30 19:35:30 -0400 | |
commit | f1a6e00a3107317d551c27459194aff3317919f4 (patch) | |
tree | 7ec2a98fd4a4ad0308792c8bb4c52ece424c43d0 /doc | |
parent | 0862a7f3a3823a925f86bf2c33d67db05a2781e8 (diff) |
multicast: New command, uses uftp to multicast annexed files, for eg a classroom setting.
This commit was supported by the NSF-funded DataLad project.
Diffstat (limited to 'doc')
-rw-r--r-- | doc/git-annex-multicast.mdwn | 95 | ||||
-rw-r--r-- | doc/git-annex.mdwn | 6 | ||||
-rw-r--r-- | doc/internals.mdwn | 4 | ||||
-rw-r--r-- | doc/todo/multicast___34__broadcasting__34___of_content_on_local_net.mdwn | 3 |
4 files changed, 108 insertions, 0 deletions
diff --git a/doc/git-annex-multicast.mdwn b/doc/git-annex-multicast.mdwn new file mode 100644 index 000000000..87b6310b7 --- /dev/null +++ b/doc/git-annex-multicast.mdwn @@ -0,0 +1,95 @@ +# NAME + +git-annex multicast - multicast file distribution + +# SYNOPSIS + +git annex multicast [options] + +# DESCRIPTION + +Multicast allows files to be broadcast to multiple receivers, +typically on a single local network. + +The uftp program is used for multicast. +<http://uftp-multicast.sourceforge.net/> + +# OPTIONS + +* `--gen-address` + + Generates a multicast encryption key and stores a corresponding multicast + address to the git-annex branch. + +* `--send [file]` + + Sends the specified files to any receivers whose multicast addresses + are stored in the git-annex branch. + + When no files are specified, all annexed files in the current directory + and subdirectories are sent. + + The [[git-annex-matching-options]] can be used to control which files to + send. For example: + + git annex multicast send . --not --copies 2 + +* `--receive` + + Receives files from senders whose multicast addresses + are stored in the git-annex brach. + + As each file is received, its filename is displayed. This is the filename + that the sender used; the local working tree may use a different name + for the file, or not contain a link to the file. + + This command continues running, until it is interrupted by you pressing + ctrl-c. + + Note that the configured annex.diskreserve is not honored by this + command, because `uftpd` receives the actual files, and can receive + any size file. + +* `--uftp-opt=option` `-Uoption` + + Pass an option on to the uftp/uftpd command. May be specified multiple + times. + + For example, to broadcast at 50 Mbps: + + git annex multicast send -U-R -U50000 + +# EXAMPLE + +Suppose a teacher wants to multicast files to students in a classroom. + +This assumes that the teacher and students have cloned a git-annex +repository, and both can push changes to its git-annex branch, +or otherwise push changes to each-other. + +First, the teacher runs `git annex multicast --gen-address; git annex sync` + +Next, students each run `git annex multicast --gen-address; git annex sync` + +Once all the students have generated addresses, the teacher runs +`git annex sync` once more. (Now the students all have received the +teacher's address, and the teacher has received all the student's addresses.) + +Next students each run `git annex multicast --receive` + +Finally, once the students are all listening (ahem), teacher runs +`git annex multicast --send` + +# SEE ALSO + +[[git-annex]](1) + +uftp(1) + +uftpd(1) + +# AUTHOR + +Joey Hess <id@joeyh.name> + +Warning: Automatically converted into a man page by mdwn2man. Edit with care. diff --git a/doc/git-annex.mdwn b/doc/git-annex.mdwn index 0add5a537..07b8b19e1 100644 --- a/doc/git-annex.mdwn +++ b/doc/git-annex.mdwn @@ -164,6 +164,12 @@ subdirectories). See [[git-annex-undo]](1) for details. +* `multicast` + + Multicast file distribution. + + See [[git-annex-multicast]](1) for details. + * `watch` Watch for changes and autocommit. diff --git a/doc/internals.mdwn b/doc/internals.mdwn index 78d0c8d47..00b65d2d1 100644 --- a/doc/internals.mdwn +++ b/doc/internals.mdwn @@ -288,3 +288,7 @@ that should prevent merging. Example: e605dca6-446a-11e0-8b2a-002170d25c55 [ObjectHashLower] timestamp=1422387398.30395s + +## `multicast.log` + +Records uftp public key fingerprints, for use by [[git-annex-multicast]]. diff --git a/doc/todo/multicast___34__broadcasting__34___of_content_on_local_net.mdwn b/doc/todo/multicast___34__broadcasting__34___of_content_on_local_net.mdwn index fa240bdf5..bd3477072 100644 --- a/doc/todo/multicast___34__broadcasting__34___of_content_on_local_net.mdwn +++ b/doc/todo/multicast___34__broadcasting__34___of_content_on_local_net.mdwn @@ -5,3 +5,6 @@ Although I haven't remembered that "hash thing" to perform the job, we looked ar What do you think? [[!meta name=yoh]] + +> [[done]]! I've only tested it with sender and receiver on the same +> laptop, but it seems to work. --[[Joey]] |