Конфликт слияния, несмотря на несуществующий файл

#git

#git

Вопрос:

Я пытаюсь извлечь изменения из репозитория. Однако существует проблема:

 error: Your local changes to the following files would be overwritten by merge:
.idea/vcs.xml
  

Дело в том, что этот файл не существует в моем локальном репозитории, поэтому я ничего не могу с этим файлом поделать. Более того, я уже добавил папку .idea в .gitignore, но она почему-то не обнаруживает ее.

Комментарии:

1. возможно, есть локальные изменения.idea/vcs.xml ? Также было бы желательно знать, как папка idea добавляется в .gitignore, чтобы люди могли проверить, правильно ли это

2. .idea/ path добавляется в .gitignore. и файл .idea/vcs.xml , как я уже упоминал, был удален в прошлом, так что сейчас его не существует.

3. Как насчет устранения конфликта с помощью git rm --cached .idea/vcs.xml ?

4. странно, сначала казалось, что он его удалил, но затем та же проблема сохраняется.

5. На самом деле это не конфликт слияния , который характерен для случаев, когда различные входные файлы остаются в индексе Git. Это скорее конфликт перед слиянием, который препятствует началу слияния. Но смотрите Ответ LeGEC.

Ответ №1:

Вы получите эту ошибку, если :

a. файл в настоящее время существует (и не отслеживается) на вашем диске :

 ls .idea/vcs.xml
  

б. и каким-то образом файл все еще присутствует в удаленной ветке :

 git show origin/branch:.idea/
  

Комментарии:

1. Удаление файла из удаленного репозитория решило проблему.