Невозможно переключить ветви в git, выдает ошибку: следующие неотслеживаемые файлы рабочего дерева будут перезаписаны извлечением
Когда я делаю некоторые изменения в ветке и пытаюсь переключиться на основную ветку, я продолжаю получать эту ошибку: Следующие неотслеживаемые файлы рабочего дерева будут перезаписаны извлечением
Решения в этом потоке не работают: следующие неотслеживаемые файлы рабочего дерева будут перезаписаны checkout
1 ответ
Я предполагаю, что причина этой ошибки заключается в том, что файлы, перечисленные в вашей ошибке, не отслеживаются в вашей текущей searchPlus
филиал, но они отслеживаются в вашем master
ветка. Если бы Git были оформить заказ master
вслепую, это будет забивать (то есть перезаписывать) эти файлы. Когда Git проверяет другую ветку, он перезаписывает каждый отслеживаемый файл. Обычно, если перезаписываемый файл уже отслеживается, существует минимальный риск, потому что у вас все еще есть другая ветвь. Однако в случае ваших неотслеживаемых файлов они будут перезаписаны, и поэтому вы потеряете состояние, в котором находились эти файлы. searchPlus
, Что еще хуже, после проверки master
если бы вы должны были вернуться к searchPlus
эти файлы фактически исчезнут, потому что Git определит, что эти файлы не существуют в вашем searchPlus
ветка.
Чтобы обойти это, одним из возможных решений было бы просто git add
эти файлы и сделать коммит. Предполагая, что они уже были совершены в master
Возможно, имеет смысл, чтобы эти файлы были повсеместно версионированы.
Как примечание, те .project
файлы в вашем сообщении об ошибке кажутся мне подозрительными. Как правило, файлы конфигурации не должны быть версионированы Git, так что вы можете посмотреть, действительно ли вы хотите, чтобы они версионировались в master
ветка.