Введение
Бывают ситуации, когда Вы трудитесь над проектом, заливаете новые коммиты на Git, и замечаете, что все со всеми вашими файлами улетают также и системные файлы: данные вашей IDE, временные конфигурации приложения, данные кэша и так далее. Эти файлы нет нужды контролировать используя Git, так как они всегда будут разными, постоянно будут изменяться и Ваши манипуляции к их персонам, по сути, бессмысленны. По этой причине появился .gitignore.
.gitignore — это файл, в котором хранятся записи о директориях и файлах, которые не нужно отслеживать СКВ.
Создание .gitignore
Для того, чтобы адекватно сработаться с .gitignore у Вас должен быть установлен и настроен Git, а также должен быть существующий проект. Откройте консоль, перейдите в директорию, где находится необходимый проект. Введите следующую команду
1 |
touch .gitignore |
В директории появится файл (возможно, он будет скрытым) .gitignore.
На текущий момент изменения отслеживаются в директории images и прочих файлах. Попросим Git не отслеживать директорию images. Откройте .gitignore, например, через блокнот. Введите в файл следующее
1 |
images/ |
Символ слеша в конце имени дриектории необходим для того, чтобы также игнорировать всё содержимое директории. Не забудьте сохранить файл. Теперь посмотрим в каких местах нашего проекта произошли изменения применив команду
1 |
git status |
Теперь изменения в директории images и во всех вложениях в ней не отслеживаются.
Так как проект существующий и уже коммитили наши «ненужные» файлы, то необходимо сбросить кэш с этих файлов и директорий иначе изменения будут по прежнему отслеживаться.
Откройте консоль и выполните следующую команду для удаления кэша директории
1 |
git rm -r --cached <name_directory> |
Для удаления кэша файлов используйте следующую команду
1 |
git rm --cached <name_file> |
При следующем коммите файлы и директории, для которых был очищен кэш и находившимся в .gitignore, будут определены как удалённые, но у Вас на компьютере они будут, и отслеживаться более не будут.