Удалить существующий файл из Git Repo - программирование

Удалить существующий файл из Git Repo

Я хочу, чтобы git прекратил отслеживать мой локальный журнал разработки (log/development.log) в наших хранилищах. Возможно ли это и как я могу это сделать?

4b9b3361

Ответ 1

Просто, чтобы дать полный ответ сразу:

  • from klemens: вам нужно добавить файл в ваш файл .gitignore где-то выше нежелательного файла в репо. то есть.

    $cd $ cat → .gitignore development.log С-д

  • из m. narebski: Затем вам нужно удалить файл из репо, выполнив "git rm --cached <file>, а затем совершив это удаление"

Если бы вы также надеялись сделать репо похожим на то, что он никогда не отслеживал этот файл, это намного сложнее и сильно обескураживается, поскольку он не только создает совершенно новые фиксации для каждого отдельного фиксации в вашей истории, тем самым разрушая взаимодействие в неприятный путь между другими людьми, которые клонировали ваше репо, но это также оставляет каждый из этих коммитов непроверенным (предполагая, что вы проверяете свои коммиты, прежде чем создавать их).

С учетом этого требования, инструмент, который вы ищете, если ваша цель filter-branch. Первый пример делает именно то, что я описываю.

Ответ 2

Чтобы остановить отслеживание файла, просто используйте git rm --cached <filename>.

Но, как указано другими, добавление файла в .gitignore может помешать вам случайно добавить его позже.