Ignorar files que no contienen punto en git

Quiero ignorar todos los files en mi repository de git cuyo nombre no contiene ningún '.' (período). ¿Cómo hacer que Git los ignore?

  1. Ignora todo: *

  2. Ignore los directorys, para que Git busque dentro de los directorys !*/

  3. Ignorar files con al less un punto !*.*

El .gitignore resultante consiste en esas tres líneas, en ese order:

 $ cat .gitignore * !*/ !*.* $ git ls-files --other .gitignore foo foo.txt sub/bar sub/bar.y $ git status --short -uall ?? .gitignore ?? foo.txt ?? sub/bar.y 

(Si bien esto funciona, puede que no sea la mejor estrategia general: como sugirió Yunnosch en un comentario , podría ser mejor, estratégicamente, colocar los binarys generados en otra parte).