Как правильно написать правила игнорирования в
.gitignore имея такую структуру и правила для каталогов и файлов?
"main folder"
├ "node_modules" /* нужно игнорировать полностью */
├ "src"
│ ├ "css" /* нужно игнорировать файлы внутри каталога и оставить каталог всегда пустым */
│ ├ "fonts" /* нужно игнорировать файлы внутри каталога и оставить каталог всегда пустым */
│ ├ "img" /* нужно игнорировать файлы внутри каталога и оставить каталог всегда пустым */
│ │ └ "favicon" /* нужно игнорировать файлы внутри каталога и оставить каталог всегда пустым */
│ ├ "js" /* нужно игнорировать файлы внутри каталога кроме тех которые есть там поумолчанию */
│ │ ├ "components" /* нужно игнорировать файлы внутри каталога кроме тех которые есть там поумолчанию */
│ │ └ "common.js"
│ ├ "libs" /* нужно игнорировать полностью */
│ ├ "sass" /* нужно игнорировать файлы внутри каталога кроме тех которые есть там поумолчанию */
│ │ └ "style.sass"
│ └ "index.html"
├ ".bowerrc"
├ "bower.json"
├ "gulpfile.js"
├ "package-lock.json" /* нужно игнорировать файл */
└ "package.json"