Задать вопрос
@sulik93
Начал изучать Java. Продолжаю изучать Java.

Как восстановить коммиты из безымянной ветки?

Добрый вечер!
Использую SourceTree.
Я делал коммит в develop. Затем я совершил какие-то действия второпях (Это моя большая ошибка), которые привели к созданию ветки безымянной, но на которой был HEAD. Несколько дней я записывал в эту безымянную ветку изменения(коммитил).
И вот я решил перейти на ветку develop. И, черт побери, безымянная ветка пропала, я оказался на ветке develop, мои изменения потерялись.
Дедлайн уже в понедельник, а тут такое!!!
Подскажите, пожалуйста, как мне вернуть свои изменения из безымянной ветки?
  • Вопрос задан
  • 4560 просмотров
Подписаться 2 Средний 1 комментарий
Решения вопроса 1
v_decadence
@v_decadence
Через git reflog ищете хеши потерянных коммитов.
reflog выводит все хеши, где был HEAD.

И потом:
git branch new-branch-name hash

Ну а потом переходите в develop (хотя Вы и так вроде там) и мержите потерянные изменения:

git checkout develop
git merge new-branch-name


Естественно, это всё через консоль надо делать.

Главное, делать это в том хранилище, где были коммиты, и до git gc, иначе информация о недостижимых коммитах будет удалена.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы