response; update man page

This commit is contained in:
Joey Hess 2017-05-09 14:02:48 -04:00
parent 05b1dee353
commit dccd7ba6d4
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
2 changed files with 28 additions and 0 deletions

View file

@ -1217,6 +1217,10 @@ Here are all the supported configuration settings.
to or from this remote. For example, to force IPv6, and limit
the bandwidth to 100Kbyte/s, set it to `-6 --bwlimit 100`
Note that git-annex-shell has a whitelist of allowed rsync options,
and others will not be be passed to the remote rsync. So using some
options may break the communication between the local and remote rsyncs.
* `remote.<name>.annex-rsync-upload-options`
Options to use when using rsync to upload a file to a remote.

View file

@ -0,0 +1,24 @@
[[!comment format=mdwn
username="joey"
subject="""comment 23"""
date="2017-05-09T17:52:11Z"
content="""
@mario, great question! (Not the best place for such a question, start a
thread on the forum next time..)
git-annex does use rsync when transferring files between ssh remotes.
Rsync normally goes over ssh, and it might be better to enable compression
at the ssh level. For example, I have "Compression yes" in `~/.ssh/config`
I think that the reason your annex-rsync-upload-options setting broke
it is that rsync needs --compress to be passed on to the other
rsync process (in the remote repository), and that is run via
git-annex-shell, which has a whitelist of options it will pass to rsync.
Passing arbitrary options to rsync could allow unwanted behavior
when git-annex-shell is being used as a security barrier. And --compress is
one of the options that both the rsync sender and receiver have to agree
on for the rsync protocol to work.
I have added a note to the man page about this limitation of what
the rsync-options settings can be used to do.
"""]]