2015-08-28 3 views
2

У меня были личная ветвь «ТМП-работа» вместе с филиалом «магистрального», хотела сделать чистые ресинхронизации в магистральных отраслях на местном репо После запуска командыGit Восстановление локального репозитория - случайно сделал мерзавец чистого -f -d

$> Извлечь мерзавец происхождения & & Git сброса --hard происхождения/магистральный & & мерзавец чистый -f -d

Мои "ТМП-работа" филиал больше не существует :(

ветвь «tmp-work» не была перенесена на удаленный сервер. Есть ли способ восстановить его на Mac-книге? Я бегу Mac данных восстановить все еще не повезло.

+3

Возможный дубликат [Можно ли отменить \ git clean -fdx \??] (Http://stackoverflow.com/questions/6267180/can-i-undo-a-git-clean-fdx) –

+1

Ничего здесь не должно было удалять локальную ветвь. Возможно, у документации [data recovery] (https://git-scm.com/book/en/v2/Git-Internals-Maintenance-and-Data-Recovery#Data-Recovery) будут предложения. – larsks

ответ

0

Я могу ошибаться: так важно, сначала сделайте резервную копию своего локального репозитория git (zip/tar/copy ...)!

вы должны найти свой последний коммит SHA1 для рабочей ветви в ТМП работе с командой:

git reflog 

затем попробовать и запустить (пока найти хороший SHA1):

git checkout <SHA1> 

и, наконец:

git reset --hard 

или:

git checkout -b <new branch name> 
+1

Эти файлы были отслежены git, вы не можете восстановить их с помощью команд git. – zaratustra

+0

ой, хотя он совершил переход на tmp-work и что он потерял те коммиты (отсоединенные/недоступные) из-за «git reset -hard». Конечно, если ничего не было сделано, все стирается. (и отслеживаемые изменения уже были стерты с помощью сброса) – sligor