Publishing static content of a web site
Publish web site composed of static files and directories in
directory ~/subdir/ on local machine to web site
directory ~/dir/subdir on remote server
$ rsync -thrivpbl ~/mysite/ foouser@host.domain.com:~/dir/msite
or
$ rsync -zhavib ~/mysite/ foouser@host.domain.com:~/dir/mysite
-aequals-rlptgoD-rrecursive-lpreserve links-ppreserve permissions-tpreserve time stamp- If copying on the same computer:
-gpreserve group-opreserve owner-Dor--devicespreserve device files
-hreport human readable numbers-ireport itemized list of the changes to each file, including attribute changes.-vverbose-bbackup-zcompress file data during transfer
Verbose output (-v)
Some common indicators:
>f+++++++++: recieving (>) a regular file (f) which is newly created (+).<f.st......: sending (<) a regular file (f) whose size (s) and time stamp (t) are different.>f.st......: recieving (>) a regular file (f) whose size (s) and time stamp (t) are different..d..t......: not updating (initial.) a directory (d) whose time stamp (t) is different.
References: http://stackoverflow.com/questions/4493525/rsync-what-means-the-f-on-rsync-logs
Safely copying large file
$ sudo rsync -vahzi --progress /Volumes/large_file.mp4 /Volumes/new_file.mp4
Safely copying a large directory
$ sudo rsync -vahzi --progress /Volumes/large_dir/ /Volumes/new_dir
Installing up-to-date rsync via Homebrew on macOS
The version of rsync coming with macOS operating
system is an older version (2.* as of OS X 10.10.2).
To install the more up-to-date version,
brew doctor
brew upgrade
brew tap homebrew/dupes
brew install rsync
Make sure the path Homebrew installs softwares to,
/usr/local/bin appears before other paths in
/private/etc/paths so it's searched first. Restart the
terminal.
