Dropbox vs Github for dotfiles sync? For the last few years I've been using Dropbox to sync my dotfiles. For zsh, oh-my-zsh, emacs settings etc.

More people seem to be using Github for this. What are the advantages and disadvantages in this?

From what I can see, keeping Dropbox in sync is simpler - I don't have to push, pull etc, whenever I change something. On the other hand, my Dropbox folder is pretty large now, so it can take a while to get all my files.

In the future, I'd also like to sync some application preferences - like Alfred, Sublime, etc. 

What are the situations where one, or the other have a distinct (dis)advantage?
I currently don't use github for dotfile syncing but I plan to do it. My reasoning is that I would like to have slightly different configs on different machines. To make that possible, you can basically have a master branch, and seperate branches for each device/device group as needed. If you add something new to the master branch, you can merge it with other customized branches etc. For auto syncing between machines, you could create a script that pulls from remote with an interval, possibly with support of manual pulling.. Easiest way to do that depends on your OS. So in summary, this all comes down to how often you change your configs, if you want to have customized configs for some device groups (e.g. all OSX devices vs all Ubuntu VMs) etc. Finally it's easier to use dotfiles from github than it is from dropbox when you work with machines where you have limited privileges (admin rights for installing Dropbox syncer?)