Git теряет историю / содержимое отдельных файлов

Я работаю в небольшой компании, и наше репозиторий Git немного запутался. Я только что выполнил git pull , и мои изменения, сделанные ранее сегодня, исчезли!

Когда я работаю с HEAD в главной ветке, git log показывает мою последнюю фиксацию b94940c63ef965ce45b0d64ccfba4359134d2552 в его истории.

Теперь, если я сделаю git log filename для проблемного файла, который потерял мои изменения, эта фиксация не отображается (показывает только более раннюю фиксацию).

Выполнение git log --follow filename , моя фиксация b94940c63ef965ce45b0d64ccfba4359134d2552 отображается как самая последняя.

И, конечно же, если я делаю:

git checkout b94940c63ef965ce45b0d64ccfba4359134d2552
git log filename

, то отображается фиксация и мои изменения находятся в файле!

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

Вопросы:

  1. Как это случилось?

  2. Как мне это исправить? (У нас проблемы с несколькими файлами в нашем репо)

8
задан Nayuki 20 July 2015 в 06:00
поделиться