Git - Как восстановить изменения кода из файла после случайного извлечения конкретного файла

Я случайно сделал контрольный файл. И в этом файле были изменения кода.

Так могу ли я восстановить эти изменения?

1 ответ

Решение

Вопреки тому, что люди, оставившие комментарии, заставят вас поверить, проверка на конкретный путь (т.е. git checkout path/to/my/file) действительно перезаписал бы ваши неустановленные изменения в этом файле без предупреждения, потому что это именно та команда, которую git ожидает от вас, если вы намерены отменить неустановленные изменения.

И, к сожалению, из-за того, что изменения были неустановленными, у git их нет. Хотя git очень хорошо сохраняет историю после ее фиксации, он не предлагает никакой специальной защиты для дерева работ; поэтому команды, влияющие на неотслеживаемые файлы или файлы с неустановленными изменениями, особенно опасны.

Если вы делаете непрерывные резервные копии (или вам повезло, и вы сделали резервную копию, пока существовали изменения), вы можете использовать их. Некоторые IDE хранят историю работы, которая может помочь. Но, к сожалению, в большинстве случаев (если у вас нет необычайно надежных методов резервного копирования) в этом сценарии, вероятно, мало что можно сделать.

Другие вопросы по тегам