You also need to know that there’s the potential for a fairly major .gitignore bug on OS X: http://article.gmane.org/gmane.comp.version-control.git/2256...
Homebrew backed out 1.8.3 because of this.
Homebrew backed out 1.8.3 because of this.
Edit: Specifically, I've got ".* .un~" and ".*.sw?" in my global excludes file, but they're showing up as untracked (not ignored) when my repo's .gitignore has some !-type patterns. Perhaps something about the precedence of such rules was changed.