Assen Totin <assen.totin@xxxxxxxxx> writes: > I'm not sure if the described issue is a bug or a feature; if it is the > latter, please, excuse the report. > > I'm dealing with git 1.7.12.4. If this has been addressed in the later > issue, please, point me so. That is a bit too ancient version, so I am not sure how it behaved back then. > I'm only interested in /tracked_dir/.../config files. My .gitignore is as > follows: > > # Ignore everything first > * > # Do not ignore tracked files > !/tracked_dir/*/config > # Don't ignore .gitignore > !.gitignore > > This works fine until a new directory with a config file is created inside > /tracked_dir: I am not sure if that is "working fine". First, aren't these 'config' files tracked? "!/tracked_dir/*/config" or whatever you have in the gitignore files have no effect on what is already tracked. That is, if you replace your .gitignore with a single line, # ignore everything * your /tracked_dir/foo/config that is already in the index (i.e. "git ls-files tracked_dir/foo/config" would show it) would not be ignored. > Is it because the exclusion pattern is never > applied to untracked files? Or is it because the directory new_subdir is > itself untracked? So my suspicion is that (1) you do see tracked_dir/subdir1/config is not ignored not because of any of your !tracked_dir/*/config lines but because tracked_dir/subdir1/config is already in the index, and (2) your tracked_dir/new_subdir/config is shown as ignored because it is not tracked yet, and '*' tells Git that new_subdir is ignored. By the way, this area did have a recent regression at v2.7.0, to which a fix is percolating down to the v2.7.x maintenance track. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html