1) Початок ігнорувати зміни в одному вже перетвореному файлі
git update-index --assume-unchanged "main/dontcheckmein.txt"
і скасувати це git update-index --no-assume-unchanged "main/dontcheckmein.txt"
github docs для ігнорування файлів
2) Повністю ігнорувати конкретний єдиний файл, що не дозволяє йому створюватись у сховищі
Спочатку подивіться на цей пост stackoverflow: глобальна ігнорування Git не працює
В .gitignore
, додайте відносний шлях до файлу без ведучого ./
.
Отже, якщо ваш файл знаходиться у MyProject/MyFolder/myfile.txt
(, де .git
також знаходиться у MyProject
папці), додайте MyFolder/myfile.txt
до свого .gitignore
файлу.
Ви можете підтвердити, які правила пов’язані з ігноруванням через git check-ignore "MyFolder/myfile.txt"
Про глобальне ігнорування
Це посилання говорить про ~/.gitignore_global
, але файл пов'язаний з вашим проектом. Отже, якщо ви поставите виключає шаблон MyFolder/myfile.txt
в ~/.gitignore_global
, він буде працювати , але не має сенсу ...
З іншого боку, якщо ви налаштовуєте свій проект із тим, git config core.excludesfile .gitignore
де .gitignore
знаходиться MyProject
, локальний файл буде замінено ~/.gitignore_global
, що може мати дуже корисні правила ...
Тож наразі я думаю, що найкраще зробити якийсь сценарій, щоб змішати свій .gitignore
вміст ~/.gitignore_global
у .gitignore
.
Останнє попередження
Якщо файл, який ви хочете проігнорувати, вже знаходиться у сховищі, цей метод не буде працювати, якщо ви цього не зробите:, git rm "MyFolder/myfile.txt"
але спершу його резервну копію, оскільки він також буде видалений локально! Ви можете скопіювати його пізніше ...