Как восстановить файл, ранее удаленный в истории Git?

Используя ответ Криса на другой вопрос, я мог добавить историю снимков в мой репозиторий git. Так как один из файлов не является частью моей истории, а только снимками, первый оригинальный коммит теперь также содержит удаление этого файла. Как я могу отменить это?

Сначала я подумал, что это противоположно тому, как удалить конфиденциальные файлы из истории git, но на самом деле я не хочу вставлять файл в историю, а просто удалить удаление из истории.

2 ответа

Решение

Я понял:

git tag originalHead # just in case
git rebase -i <id of the parent of the commit that deleted the file>
# change pick to edit for that commit
git checkout <id of the previous commit> <filename> # thanks for reminding, kubi
git commit --amend
git rebase --continue
git tag -d originalHead

редактировать, к сожалению, это оставит все теги на старой временной шкале, см. здесь

git checkout <commit> <filename>
Другие вопросы по тегам