With small tweaks like a non-symlinked file that contains only machine local variables (I call mine .bashrc.local and source it from the main bashrc), you can evem make the configs vary across machines on the subtler things.
This works wonders for me getting custom configs everywhere, with the exception of windows machines that are always a huge headache to work with.