Cіпласпластик: post #522 — TG.ME

Дізнався пару днів тому з якоїсь статті, яку вже загубив, про фічу в Git 💻, котрої мені бракувало.

Річ у тім, що в моїх робочих копіях 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 підкоманд
🤯 Unix way, ага).

Краще запускайте з --verbose, і воно тоді покаже, звідки саме прийшов ігнор:
> git check-ignore .DS_Store --verbose
/Users/cpplastic/.config/git/ignore:1:.DS_Store .DS_Store
👍314🔥3🤣1
July 8, 2026 1.2K 17 16