В моем проекте была главная ветка и две отдельные ветки для двух пользователей — ветка1 и ветка2. После слияния изменений из ветки 2 в ветку 1 в ветке 2 теперь отсутствуют файлы .sln и .csproj. То же самое произошло с филиалом 1 после проверки между тремя филиалами. Теперь я не могу найти два файла в папках проекта и не могу открыть их из «недавних» VS.
Это связано с тем, что оба файла находятся в .gitignore? Как мне вернуть его?
Пытался найти файл на github, нигде не нашел. Файлы .sln и .csproj работали нормально, пока не произошло слияние ветки 1 с веткой 2. Пытался показать все файлы в обозревателе решений, но все равно отсутствуют.
Для получения дополнительной информации о возврате посмотрите это.
Вы можете получить список всех коммитов, которые каким-либо образом повлияли на ваш файл, чтобы найти, где вы накосячили:
git log --follow -10 -- my.sln
Здесь -10
просит отобразить последние 10 коммитов (если такое количество коммитов присутствует), которые каким-либо образом повлияли на ваш файл (созданные, отредактированные, удаленные).
Это будет работать, даже если файл уже удален, т.е. отсутствует в вашем рабочем дереве на конкретной голове.
Узнав виновника, вы можете отменить его, как уже упоминалось в другом ответе. Вы можете использовать разные варианты возврата: git revert -m
или git reset --hard
, в зависимости от предпочтений и опыта.
Я попытался проверить журнал git, но так и не смог определить причину исчезновения двух файлов. У меня были файлы проекта на флэш-накопителе, и я просто добавил их в свои репозитории на Git Hub, а затем вытащил обновления на VS. Файлы вернулись, но неизвестно, что стало причиной их пропажи. Думаю, это будет проблемой на следующий день...
Спасибо всем за помощь!