Поиск по сайту
Ctrl + K
Вопросы по Git

Как удалить файл из Git, но не удалить его из файловой системы?

Чтобы удалить файл из контроля версий Git, но оставить его на диске (файловой системе), вы можете использовать команду git rm с параметром --cached. Этот подход удобен, если вы, например, хотите исключить файл из отслеживания Git, но не хотите его физически удалять с вашего компьютера.

Пример:

Предположим, у вас есть файл example.txt, который вы хотите удалить из Git, но оставить на вашем компьютере.

  • Сначала выполните команду git rm --cached:
    git rm --cached example.txt
    

    Эта команда удаляет файл example.txt из индекса Git, что делает его неотслеживаемым, но оставляет его на вашем диске.
  • После этого вам нужно сделать коммит, чтобы изменения вступили в силу:
    git commit -m "Убрали example.txt из контроля версий"
    
  • Теперь файл будет удалён из Git в следующем коммите, но всё ещё останется на вашем компьютере.
  • Важные моменты:

    • Используя --cached, вы сохраняете файл в рабочем каталоге, но Git больше не будет отслеживать его изменения.
    • Если вы хотите исключить файл из отслеживания, но при этом сохранить его в репозитории, вы можете добавить его в файл .gitignore. Это предотвратит его добавление в контроль версий в будущем.

    Пример .gitignore:

    Если вы решили исключить example.txt навсегда, добавьте его в файл .gitignore:

    example.txt
    

    Заключение:

    Используя команду git rm --cached, вы можете легко управлять файлами, которые не нужно отслеживать в вашем проекте, но которые при этом важны для локальной разработки. Это полезно для конфиденциальных данных, временных файлов или настроек, которые не должны попадать в общий репозиторий.