2013-03-21 2 views
1

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

Моя проблема заключается в том, что мой локальный репо составляет 10 коммитов впереди удаленного мастера, поэтому просто клонирование мастера не является хорошим и не проверяет другую фиксацию. Боюсь, я либо уничтожу свое местное репо и источник, либо покручу больше.

Спасибо за любую помощь.

ответ

3

Если вы не совершали этого изменения тем не менее, следующие даст вам файл обратно:

git checkout <filename> 

точное имя файла может быть получена с помощью git status.

+0

Я, кажется, продолжаю находить вещи в git проще, чем они появляются! - Спасибо, это очень трюк. – SnakeDoc

2

Даже если вы сделали свои изменения и хотите получить файл с более ранней ревизии, вы можете получить его с помощью команды

git show <revision>:<filename> > <new-filename> 

(без перенаправления вывода будет просто отображать содержимое ревизии файла в less).

2

Если вы сделали git add file, его содержание в тот момент сохраняется в индексе, и вы можете получить его обратно git checkout file. Если вы не сделали add, но это было commit ed раньше, вы получите последнюю версию.

Смежные вопросы