diff --git a/plugins/rsync/init.zsh b/plugins/rsync/init.zsh index a9c1c0c..0ec3693 100644 --- a/plugins/rsync/init.zsh +++ b/plugins/rsync/init.zsh @@ -1,10 +1,20 @@ # Aliases -alias rsync-copy='rsync --verbose --progress --human-readable --compress --archive --hard-links' +rsync_cmd='rsync --verbose --progress --human-readable --compress --archive --hard-links --one-file-system' + +# Mac OS X and HFS+ Enhancements +# http://www.bombich.com/rsync.html +if [[ "$OSTYPE" == darwin* ]] && grep -q 'file-flags' <(rsync --help 2>&1); then + rsync_cmd="${rsync_cmd} --crtimes --acls --xattrs --fileflags --protect-decmpfs --force-change" +fi + +alias rsync-copy="${rsync_cmd}" compdef _rsync rsync-copy=rsync -alias rsync-move='rsync --verbose --progress --human-readable --compress --archive --hard-links --remove-source-files' +alias rsync-move="${rsync_cmd} --remove-source-files" compdef _rsync rsync-move=rsync -alias rsync-update='rsync --verbose --progress --human-readable --compress --archive --hard-links --update' +alias rsync-update="${rsync_cmd} --update" compdef _rsync rsync-upate=rsync -alias rsync-synchronize='rsync --verbose --progress --human-readable --compress --archive --hard-links --update --delete' +alias rsync-synchronize="${rsync_cmd} --update --delete" compdef _rsync rsync-synchronize=rsync +unset rsync_cmd +