July 28, 2013
Summary: Git's "git status --ignored" is half-broken and therefore unreliable, and so are the "solutions" floating around the net.

I've posted a short explanation/rant along with a script written in D which accomplishes the task correctly:

http://semitwist.com/articles/article/view/do-not-use-git-status-ignored