Потому что используют всякие левые клиенты. Тот же phpstorm только недавно научился в гитигнор, без танцев с бубном. Нетбинс тоже все подряд сам кидает, если сразу не сказал игнорь. Но тот умеет в гитигнор, потому вообще хз как они это делают 😖
Потому что я уверен, что пару версий назад, если у меня лежит файл .gitignore при комитете ide предлагала отправить файлы в гит. Сейчас даже официальный пункт в меню появился.