Я просто удалил не ту ветку с некоторыми экспериментальными изменениями, которые мне нужны git branch -D branchName
.
Как мне восстановить ветку?
git
branch
git-branch
Стефан Кендалл
источник
источник
Ответы:
Вы можете использовать git reflog, чтобы найти SHA1 последнего коммита ветви. С этого момента вы можете воссоздать ветку, используя
Редактировать: Как говорит @seagullJS,
branch -D
команда сообщает вам sha1, поэтому, если вы еще не закрыли терминал, он становится действительно простым. Например, это удаляет, а затем сразу восстанавливает ветку с именемmaster2
:источник
git branch branchName origin/branchName
Если вы знаете последний SHA1 ветви, вы можете попробовать
Вы можете найти использование SHA1
git reflog
, описанное в решении здесь .источник
Если вы еще не нажали удаление, вы можете просто сделать:
источник
Если вы только что удалили ветку, вы увидите что-то вроде этого в своем терминале:
Чтобы восстановить ветку, используйте:
например :
источник
Первое: создайте резервную копию всего каталога, включая каталог .git.
Второе: вы можете использовать
git fsck --lost-found
для получения идентификатора потерянных коммитов.Третье: перебазирование или слияние с потерянным коммитом.
Четвертое: всегда дважды подумайте, прежде чем использовать -D или --force с git :)
Вы также можете прочитать это хорошее обсуждение того, как исправить ошибку такого рода.
РЕДАКТИРОВАТЬ: Между прочим, не запускайте
git gc
(или не позволяйте ему запускаться самостоятельно - т.е. не запускайтеgit fetch
или что-то подобное), иначе вы можете потерять свои коммиты навсегда.источник
Спасибо, это сработало.
// могу видеть мои старые проверенные файлы в моей старой ветке
источник
Следуй этим шагам:
1: введите:
Это отобразит всю историю коммитов, вам нужно выбрать sha-1, который имеет последний коммит, который вы хотите вернуть
2: создайте имя ветви с выбранным вами идентификатором Sha-1 , например: 8c87714
источник
Это сработало для меня:
источник