But this method has a big problem that subversion make my machines same state though they has different environments.
For example, there is a difference on version of Emacs or PATH environment variable on For this problem, I split dot files to files named .zshrc.main and .zshrc.desktop at el.
This is not so bad solution. But there is a problem yet.
Here, you may think that I should add new macro to .emacs.main file.
But I think your idea is wrong. Because new macro may not be able to run on whole my machines. So I can't write new macro to .emacs.main which effect on whole my machines.
As a result, I should copy the statement for new macro to .emacs.raptop by my hand.
Woom. Does anyone have nice solution ? :-(