git-annex-multicast(1)       General Commands Manual      git-annex-multicast(1)

       git-annex-multicast - multicast file distribution

       git annex multicast [options]

       Multicast allows files to be broadcast to multiple receivers, typically
       on a single local network.

       The uftp program is used for multicast.


              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(1) can be used to control which
              files to send. For example:

               git annex multicast send . --not --copies 2

              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

       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




       Joey Hess <>