Я занимался своим проектом, а в какой-то момент я обнаружил, что одна вещь перестала работать. Мне нужно было посмотреть состояние моего кода, когда он работал правильно, поэтому я решил использовать git checkout (потому что я хотел проверить что-то). И поэтому я сделалGit checkout - переход обратно в HEAD
git checkout SHA
пару раз, идя назад к точке, с которой я не могу пойти в ГОЛОВЕ, выход следующие:
git checkout SHA-HEAD
error: Your local changes to the following files would be overwritten by checkout:
[list of files]
Please, commit your changes or stash them before you can switch branches.
Aborting
Я довольно много, что я еще не что-то изменилось. Команда
git checkout master
дает тот же результат.
Есть ли способ вернуться к HEAD?
Что такое безопасный способ «перескакивания» истории?
Если вы не хотите, чтобы эти изменения 'мерзавец чистой -f' будет очистить все неотслеживаемые файлы. Затем выйдите на мастер – gmuraleekrishna
Сообщение 'error: ...' означает, что вы или что-то сделали, возможно косвенно, * * * изменили файлы. Вы можете указать Git отказаться или перезаписать эти изменения или использовать 'git status' и/или' git diff', чтобы увидеть, что именно, изменилось. Это может быть так же просто, как некоторая модификация окончания строки или какая-то команда, которая работает в фоновом режиме, который записывается в файл. (Кроме того: «вернуться к HEAD» не имеет смысла в Git, так как вы всегда * на HEAD: 'HEAD' буквально означает« текущая фиксация ». Вы можете * изменить * HEAD, после чего вы все еще на HEAD , просто другое HEAD. Это ... сложно сформулировать. :-)) – torek
Git загружен механизмами, так что вот два: 'git reset --hard HEAD' означает« сбросить индекс и дерево работы, чтобы они соответствовали HEAD ", т.е. выбросить изменения. Или: 'git checkout -f master' означает« изменить HEAD как 'master', даже если это означает отбросить некоторую работу»: '-f' означает« force ». – torek