http://www.dirvish.org/ and http://rsnapshot.org/ are both wrappers around rsync that do exactly this. Eventually, though, I switched to http://duplicity.nongnu.org/ for the network backends and the encryption.
That said, it's pretty good at DWIM for a command-line tool. It works as advertised and doesn't require any fiddling once you have it set up.
cons: command line syntax is verbose. Enough so that there's a wrapper for it (http://duply.net/) which I also recommend. Access to backups isn't as straightforward as with forest-of-hardlinks approaches.
I'd be interested to hear how it holds up to production use.