git ignore указывает git не отслеживать содержимое файлов по определенным именам .
Редактировать Это предотвращает только то, что git показывает файлы как неотслеживаемые или автоматически отслеживает их после git add
. Это не относится к файлам, которые в данный момент отслеживаются . Вы должны удалить их вручную из ветки, где вы хотели, чтобы они были проигнорированы.
IOW: git ignore не влияет на существующие ревизии. Отслеживаемые файлы продолжают отслеживаться, пока вы не удалите их
Независимо от этого, никогда не будет нормально перезаписывать локальные файлы без предупреждения, даже если они (в настоящее время) не отслеживаются. Конечно, это точно для предотвращения потери данных при переключении ветвей.
Многие команды git принимают опцию --force-
, чтобы все равно идти вперед, поэтому, если вы знаете, что делаете, непременно используйте это.
Если вы используете рабочий процесс git, который не позволяет вам использовать опции --force
, то я предлагаю вам использовать команду git clean -x
для очистки неотслеживаемых (то есть игнорируемых) файлов перед выполнением переключения ветви