I was disappointed by various syncing solutions. Either they've been morally questionable or they didn't really work or the took huge amounts of system resources. This made me thinking what I really need.
git's syncing model is very easy. You can do a pull and a push. That's it. No magic, has to be executed by hand and it simply works. I wanted syncing to be evenly easy. This is why I created a new project: syncer. We use
rsync to synchronize files between hosts and a simple shell script as a wrapper.
We download changes via `sync pull`. This won't overwrite local changes.
We upload changes via
sync push. This won't overwrite changes on the master.