То, что следует, действительно только решение, если вы работаете с форком репозитория, где вы регулярно синхронизируете (например, запрос на извлечение) с другим репо. Краткий ответ: удалите fork и refork, но прочитайте предупреждения на github .
У меня была похожая проблема, возможно, не идентичная, и мне грустно говорить, что мое решение не идеально, но в конечном итоге оно эффективно.
У меня часто бывают такие сообщения о состоянии git (включая как минимум 2/4 файла):
$ git status
# Not currently on any branch.
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: doc/PROJECT/MEDIUM/ATS-constraint/constraint_s2var.dats
# modified: doc/PROJECT/MEDIUM/ATS-constraint/parsing/parsing_s2var.dats
#
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: doc/PROJECT/MEDIUM/ATS-constraint/constraint_s2Var.dats
# modified: doc/PROJECT/MEDIUM/ATS-constraint/parsing/parsing_s2Var.dats
Зоркий глаз заметит, что в этих файлах есть допплангеры, которые в случае отключения - одна буква. Каким-то образом, и я понятия не имею, с чего начался этот путь (поскольку я сам не работал с этими файлами из репозитория верхнего уровня), я переключил эти файлы. Попробуйте множество решений, перечисленных на этой странице (и других страницах), похоже, не помогло.
Мне удалось решить эту проблему, удалив мой раздвоенный репозиторий и все локальные репозитории, а затем повторив повторную проверку. Одного этого было недостаточно; апстрим должен был переименовать рассматриваемые файлы в новые имена файлов. Пока у вас нет незагруженной работы, вики и проблем, которые расходятся с репозиторием апстрима, у вас все должно быть в порядке. Upstream может быть не очень доволен вами, если не сказать больше. Что касается моей проблемы, то это, несомненно, ошибка пользователя, так как я не настолько опытен в git, но факт, что исправить проблему с git также далеко не просто.