Subject: How to recursively clean only those untracked files that are not ignored?

From: Ilya Basin <[email-masked]>
Date: Sat, 19 Apr 2014 13:05:52 +0400

According to the help, without -x option git clean should let alone the ignored files, but it doesn't.

    [il@reallin test]$ cat .gitignore
    *.sar
    [il@reallin test]$ mkdir -p conf/sar && touch conf/sar/aaa.sar
    [il@reallin test]$ git status
    # On branch master
    nothing to commit, working directory clean
    [il@reallin test]$ git clean -df
    Removing conf/

conf/sar/aaa.sar is removed.

I already asked this http://stackoverflow.com/questions/23148736/git-clean-removes-ignored-files-by-default

Someone even replied that "git does exactly what documentation says".
Well, maybe, but I have doubts that the combination '-df' (without
'-x') is useful at all. If someone wanted to delete ignored files, he
would use '-x' or '-X'.