manage unix user settings across multiple machines

view full story

http://unix.stackexchange.com – I have many different linux machines with similar "profiles". I want to keep my settings in sync. e.g vimrc, zshrc,. I have the problem that they are various distributions of Linux with various setups and software versions, e.g, some of them with a windowing system, some not, Some have Zsh, some don't, some have varying versions of it. I realize I could dropbox, or github, etc, my settings. But as the environment has become more complex this has become more difficult (I already Github). I also find it challenging to keep each machine in sync. These are mostly client machines, with different in (HowTos)