While I was installing
magit the other day, I decided it was a good time to do a little digital house cleaning. I keep all my important file groups—writing, software development, blogging, and personal—in Git repositories. Oddly, given that these all flow through Emacs, I didn’t have my Emacs environment in Git. As I wrote yesterday in my Magit post, one of the primary uses for these Git repositories is to keep my various machines in sync so not having
.emacs.d in Git made no sense at all.
Part of the problem was some early poor choices on my part. I installed the Org-mode distribution as a subdirectory of
.emacs.d. There’s nothing necessarily wrong with that but I had it in there as a Git repository. A while back I decided to try to put
.emacs.d in Git but the nested Git repositories didn’t work out so well—not at all, in fact. When I finally got around to installing
magit I already had some Emacs packages in my
tools directory, so I moved the Org-mode repository out of
.emacs.d and into
tools. I had already replaced
.emacs.d so all I had to do was initialize
.emacs.d as a Git repository, clone it as a bare repository, and move the cloned repository to the server with the rest of the repositories.
Many people like to break their
.emacs into several files with a separate file for each mode or function. Some even use Babel’s literate programming facilities to tie everything together. I keep everything in one file otherwise I’d never be able to find anything. That means that I don’t have much in my
init.el and some elisp files for small packages that don’t need their own subdirectory. Here’s what it looks like
Looking at that list, I could probably get rid of
quack.el since Geiser has pretty much taken over its functions. Unfortunately the
.emacs.bmk file lives in my home directory by default and there doesn’t appear to be a way to change it. That’s not really a problem for me because I don’t use book marks but it would be nice to get everything in one place. I suppose I could set a symbolic link if I did start using them.