In a git repo, you may have a top-level .gitignore file at the root of the repo, and individual .gitignore files in subdirs.
It seems that ag only uses the nearest .gitignore it can find, and then doesn't respect the higher level ones.
So if I'm in a subdir that has a .gitignore, then the one from the repo root dir is ignored.
In my opinion, ag should identify if it's inside a git repo, start from the current dir, traverse to the root dir of the repo, concatenating the contents of all .gitignore files found along the way, and using this aggregate ignore list.
In a git repo, you may have a top-level .gitignore file at the root of the repo, and individual .gitignore files in subdirs. It seems that
ag
only uses the nearest .gitignore it can find, and then doesn't respect the higher level ones. So if I'm in a subdir that has a .gitignore, then the one from the repo root dir is ignored. In my opinion,ag
should identify if it's inside a git repo, start from the current dir, traverse to the root dir of the repo, concatenating the contents of all .gitignore files found along the way, and using this aggregate ignore list.