Mis programas generalmente generan archivos de salida enormes (~ 1 GB) que no quiero hacer una copia de seguridad en el repositorio git. Entonces, en lugar de poder hacer
git add .
Tengo que hacer algo como
git add *.c *.cc *.f *.F *.C *.h *.cu
lo cual es un poco engorroso ...
Estoy bastante seguro de que podría escribir una secuencia de comandos Perl rápida en el contenido del directorio en .gitignore y luego eliminar archivos basados en un archivo .gitinclude (o algún nombre similar), pero eso parece un poco hackear. ¿Hay una mejor manera?

cree el archivo .gitignore en su repositorio y desea rastrear solo los archivos c e ignorar todos los demás archivos y luego agregarle las siguientes líneas ...
'*' ignorará todos los archivos
y! negará que los archivos sean ignorados ... así que aquí le pedimos a git que no ignore los archivos c ...
fuente
.*archivos ocultos?*es un comodín incluso para., por lo que los archivos ocultos también se ignoran, pero los archivos ocultos entonces todo lo que terminan en.cse incluyen.*seguido!.bash*en el archivo*.*en Windows: vea la respuesta de @Smaranjit Maiticree un
.gitignorearchivo en el repositorioroot, y si desea incluir solo un.carchivo, entonces debe agregar las líneas siguientes al.gitignorearchivoesto incluirá todos los
.carchivos del directorio y subdirectorio de forma recursiva.utilizando
no funcionará en todas las versiones de git.
fuente
*y tuve que usarlo*.*. Esto está en Windows usando gitbash y git versión 2.9.0.windows.1Si necesita ignorar archivos pero no un archivo específico dentro de un directorio, así es como lo hice:
fuente
Tarde para la fiesta, pero mi solución sería tener un directorio para los archivos de origen y un directorio diferente para los ejecutables y la salida del programa, algo como esto:
... y luego solo agrego las cosas
src/a mi repositorio e ignoro porbin/completo.fuente