Git ignore: ¿cómo anula una excepción a ignorar todo?

Quiero crear un repositorio git de mi configuración de bash y complementos y demás. He ignorado todo (línea 0) y luego agregué manualmente los archivos / carpetas que quiero en el repositorio. (Tengo que hacerlo de esta manera porque el repositorio está en mi~ carpeta.) Quiero ignorar todos los perfiles de color en el directorio .vim / colors /, pero quiero incluir el único archivo que estoy usando (apprentice.vim).

los.vim/colors/* La línea no parece funcionar, no ignora ninguno de los archivos. Utilizando!!.vim/colors/* tampoco funciona ¿Cómo se supone que haga que anule todas las reglas anteriores e ignore la carpeta de colores y luego permita que se ignore el archivo apprentice.vim?

/*

*.swp

!.gitignore

!.bashrc
!.bash_profile

!.vimrc
!.vim
.vim/colors/* # Don't include all of the other color schemes
!.vim/colors/apprentice.vim

Respuestas a la pregunta(2)

Su respuesta a la pregunta