Как вы работать с Git , у вас будет много случаев, когда после добавления новых строк кода в ваш файл.gitignore игнорируемые файлы все равно будут отображаться в вашей промежуточной области «git commit». Если вы столкнулись с такой проблемой, лучший способ решить ее — очистить кэш Git.
В этом руководстве показано, как очистить весь кеш Git. Кроме того, он также покажет, как удалить все кэшированные файлы, каталоги и учетные данные из вашего репозитория Git.
Очистка всего кеша Git
Один из самых простых способов исправить файл.gitignore — полностью сбросить каталог кэша Git. Это удалит все старые метаданные из вашего текущего репозитория, и Git сможет правильно применить ваш список игнорирования.
Для начала откройте сеанс терминала и перейдите в папку вашего репозитория Git:
cd ~/your-git-repository
Очистите весь кеш репозитория, запустив git rm
вместе с его рекурсивным флагом:
git rm -r --cached .
Проверьте, правильно ли удалены все старые метаданные вашего репозитория и готов ли он к фиксации:
git reset . git status
Повторно добавьте все несвязанные данные из вашего репозитория, выполнив следующую команду:
git add .
Подтвердите сброс кеша, создав новую фиксацию в репозитории:
git commit -am 'Reset the entire repository cache.'
Очистка определенного файла или каталога из кэша Git
Помимо сброса всего кэша Git вы также можете использовать подкоманду git rm
для удаления отдельных файлов и каталогов. Это может быть полезно, если вы не хотите стирать текущую промежуточную область, но все же хотите удалить проблемный файл из своего репозитория.
Перейдите в свой репозиторий Git с помощью команды cd
:
cd ~/your-git-repository
Выполните следующую команду, чтобы удалить отдельный файл из промежуточной области:
git rm --cached your-file-here.txt
Вы также можете удалить все дерево каталогов из промежуточной области, добавив флаг -r
в git rm
:
Проверьте, удалил ли Git ненужные файлы и папки, выполнив следующую команду:
git status
Зафиксируйте изменения в дереве Git, чтобы применить новые настройки:
git commit -am 'Removed unnecessary files from the repository.'
Подтвердите, что вы правильно удалили файл, проверив состояние индекса репозитория:
file ./.git/index
Очистка кэшированных учетных данных из Git
Еще одна замечательная особенность Git — способность хранить информацию аутентификации при подключении к удаленным хостам. Однако это может стать проблемой, особенно если вы используете Git с общего компьютера.
Чтобы удалить все кэшированные учетные данные, перейдите в целевой репозиторий Git:
cd ~/your-git-repository
Выполните следующую команду, чтобы отключить возможность Git принимать любую учетную информацию для текущего репозитория:
git config --local --unset credential.helper
Затем удалите все активные учетные данные в текущем сеансе:
git credential-cache exit
И наконец, удалите файл «учетных данных» по умолчанию для вашей установки Git:
rm ~/.git-credentials
Удаление ненужных файлов и учетных данных в Git — это лишь первый шаг в управлении репозиторием вашего проекта. Узнайте, как повысить эффективность работы с Git, используя Псевдонимы Git и Git-хуки .
Изображение предоставлено: Габриэль Хейнцер через Unsplash . Все изменения и скриншоты Рамсеса Реда.