git Repository: доступна ли предыдущая версия файла за пределами Xcode

С настройкой репозитория git для моего приложения для iPhone есть ли способ получить доступ к последней зафиксированной версии файла вне XCode? Могу ли я найти предыдущую версию где-нибудь на жестком диске или, возможно, как-то собрать файл воедино? Текущая версия файла теперь повреждена (см. историю ниже, чтобы узнать, как это произошло, если интересно), и я очень хотел бы получить изменения, которые я сделал с тех пор, как в последний раз я мог сделать резервную копию файлов вне git. У меня нет возможности получить доступ к чему-либо в XCode или запустить что-либо на Mac, кроме того, что доступно через установщик Max OS X, поэтому я хотел бы получить доступ к предыдущей версии файла, если это возможно.

Story that pisses me off begins here:

Во время недавнего 6-часового перелета я взял с собой в самолет свой MAC, внося изменения в git примерно 2 раза за это время. Все нормально работало на MAC до тех пор, пока нам не пришлось отключить всю электронику в конце полета. В то время я приказал MAC отключиться, но вместо этого он завис. Желая избежать авиакатастрофы, я принудительно выключил компьютер, удерживая кнопку питания после ожидания более минуты.

Когда позже той же ночью я включил компьютер, он больше не загружался, вместо этого завис на логотипе Apple и вращающейся шестеренке. Я использовал свой установочный диск, чтобы обойти вход в систему, и получил доступ к Дисковой утилите, которая продолжила FAIL восстановление моего диска. Жесткий диск все еще монтируется, поэтому я могу получить доступ к своим файлам. Я получил доступ к абсолютно необходимому файлу, необходимому для моего приложения, и когда я открыл его на своем компьютере с Windows, он содержал мусор. Конечно, большинство других файлов были в порядке :-/

Story that pisses me off ends here.

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


person Michael    schedule 02.02.2013    source источник


Ответы (1)


Чтобы стереть текущие изменения и просмотреть самую последнюю зафиксированную версию,

git checkout HEAD .

Чтобы стереть текущие изменения и просмотреть предыдущую зафиксированную версию,

git checkout HEAD^ .
person Dietrich Epp    schedule 02.02.2013
comment
Спасибо за ответ Дитрих. Возможно, в данный момент я не совсем понимаю, но я не верю, что смогу вызвать git при доступе к компьютеру с помощью установочного диска Mac. С вашим предложением вы предлагаете как-то сделать это на моем Mac? - person Michael; 02.02.2013
comment
@Michael: Неважно, на каком компьютере вы запускаете команды. Вы можете скопировать репозиторий git в другое место и запустить команды там, или вы можете запустить команды на своем Mac с установочного диска, если вы запускаете их из тюрьмы chroot. Я рекомендую скопировать репозиторий на другой компьютер. - person Dietrich Epp; 02.02.2013
comment
Спасибо за разбивку. Я впервые работаю с git, поэтому я не знаком с его настройкой или чем-то еще. Я копирую все в свою систему Windows, и я попробую. Спасибо! - person Michael; 04.02.2013