Річ у тім, що в моїх робочих копіях git-сховищ часто купа якогось сміття: прототипчики, скрипти, тимчасові файли або ж файли, які не треба комітити — одним словом те, чим користуюся я сам і що варто ігнорувати.
Так, існує
.gitignore, але засмічувати його своїми масками файлів чи тек не завжди добре: по-перше, часто воно дійсно треба лише мені, по-друге, файл розростатиметься, по-третє, бувають випадки, коли сама наявність певного імені файлу в списку небажана.Виявилося, що
.gitignore — не єдине місце, куди можна щось таке вписувати. Є ще .git/info/exclude, який працює так само, але сам він під контролем версій не знаходиться, тож при стягуванні репи іншими членами команди у них цього всього не буде. (Хуки теж десь усередині .git лежать і страждають від цієї ж проблеми, чим мене бісять. Але тут навпаки зручно).Також є глобальний список ігнорування, який лежить в
~/.config/git/ignore. Я на macOS, тож у мене там приблизно таке:.DS_Store
**/.claude/settings.local.json
Якщо ви на вінді, то впишіть туди
thumbs.db Ну й наостанок можна ще розповісти про команду для перевірки, чи щось ігнорується ґітом:
git check-ignore <path>
(Хто б сумнівався, що вона існує. У моїй версії
git зараз у районі 160 підкоманд Краще запускайте з
--verbose, і воно тоді покаже, звідки саме прийшов ігнор:> git check-ignore .DS_Store --verbose
/Users/cpplastic/.config/git/ignore:1:.DS_Store .DS_Store


