Файл .gitignore имеет специфический формат, который с виду прост, но на самом деле не похож ни на какой другой.
Подробное описание формата, важные моменты:
Указанное имя файла/директории по умолчанию игнорируется везде в проекте.
Если вначале /, то это абсолютный путь от корня проекта.
Для игнорирования директорий, в конец добавляем /.
Как сделать игнор директории за исключением вложенного файла.