From: Jean-Philippe GariƩpy Date: Mon, 27 Sep 2010 14:35:06 GMT Subject: [BUG] git clean -X behaviour when .gitignore has sub-directory entries Message-ID: <4CA0AB9A.4050002@nuecho.com> (this is a repost w/ a bit more context) Hi, Context: "git clean -X" is really helpful in my projects to mimick a "make clean" (or more precisely a "make distclean") but I believe there is a small problem with the -X option of git clean. I've validated this with other people and they agree it's a bug. Problem: When using sub-directory entries in .gitignore, while the entry is ignored as expected, "git clean -X" doesn't clean the ignored sub-directory. $ git init test Initialized empty Git repository in /home/jpgariep/git/test/.git/ $ cd test/ $ mkdir -p a/b/c $ touch a/b/c/test $ echo '/a/b/' > .gitignore $ git add .gitignore $ git commit -m "Added .gitignore." [master (root-commit) 94e2825] Added .gitignore. 1 files changed, 1 insertions(+), 0 deletions(-) create mode 100644 .gitignore $ git status # On branch master nothing to commit (working directory clean) $ git clean -X -d -f $ ls a b Why is b still there? Git version: git version 1.7.2.3 (but this has been around since 1.6.something) Tested also with 1.7.3.2.g9027fa (today's HEAD of master branch) Thanks. -- Jean-Philippe