On 8/3/2011 10:11 AM, Les Mikesell wrote: >> Rsync barely works well on Windows > So what does??? Please, can we drop the petty advocacy? You're undoubtedly quite aware that there's a hell of a lot of software that runs best on Windows. The fact that there's a lot of low-quality ports from *ix that run poorly does not reflect on Windows. Some cases in point: Apache, MySQL, and Perl. All of them started out on *ix, and limped by with half-hearted Windows ports for years and years. All now run very well on Windows, because many concerned people put in the concerted effort to make true native ports happen. As for rsync, there are a bunch of problems. One is that the source is highly unportable. It heavily uses forks and pipes and such which have no direct equivalent under Windows. All of that would have to be abstracted away as they've done in the first-quality ports mentioned above. Above the API level, you have further problems, like POSIXland assumptions that break down under Windows: the expected existence of separate ssh binaries everywhere, the usefulness of the HOME environment variable, the value of config files in ~/.ssh. You'd have to replace all that with Windowsisms to make a proper native Windows port. Until then, you're forced to build and use it under Cygwin, which brings its own problems: heavyweight native API wrappers, its own bugs[*], incomplete POSIX semantics despite best efforts, etc. (* Years ago, there was a really nasty bug in Cygwin signal handling that caused it to hang hard during transfers. This was well known for years, and went undiagnosed in large part because of attitudes like yours. "Well, it's Windows, what do you expect?") BTW, I say this as a long-time Cygwin contributor and supporter. Bottom line: no, I would not recommend rsync to a Windows user. It's fine today for those of us who already use Cygwin for other reasons, but to outsiders, it's a mess.