It would be very nice, if one could escape colons in filenames. This is because those aren't allowed under windows.
The same applies to old DOS names like AUX, COM1, LPT1 or PRN.
This seems like something that cygwin should support, but they haven't wanted to instigate an escaping mechanism for this. So, maybe this should be a patch that the cygwin folks apply (perhaps shipped in the "patches" dir) that would transform certain names and characters when opening/creating a file, and untransforming them when reading the names via readdir or parsing the command-line args. Someone would need to choose a reasonable escape char/sequence. Any suggestions?
Cygwin doesn't "translate" filenames in its default configuration. In order to use names that are non Windows-compatible the managed mounts are to be used: search "man mount" for "-o managed" option. Warning: managed mode CAN'T be used on directories whose files were not ALL created using managed mode itself.
The transliterate patch provides a way to delete the offending colons or replace them with another character: http://rsync.samba.org/ftp/rsync/patches/transliterate.diff