find . -not -wholename "./.git*" -name "*foo*"
или, точнее, если вы не хотите видеть .git /, но действительно хотите искать в других каталогах, имя которых также начинается с .git (.git-foo/bar/...
)
find . -not -wholename "./.git" -not -wholename "./.git/*" -name "*foo*"
Немного страннее, но более эффективно, потому что это сокращает все .git
dir:
find . -not \( -wholename "./.git" -prune \) -name "*foo*"