"Не git-репозиторий: .git" после использования команды "mv"? - PullRequest
2 голосов
/ 15 февраля 2012

Я использовал команду mv для перемещения своего репозитория, и теперь выполнение любой команды Git дает мне

fatal: Не репозиторий git (или любой из родительских каталогов): .git

Папка .git действительно существует, и все выглядит нормально, но просто не будет работать.Могу ли я перезапустить git init здесь, ничего не потеряв?

1 Ответ

1 голос
/ 15 февраля 2012

Обычно это симптом некоторого вида повреждения в вашем каталоге .git во время перемещения.
git init не должно быть решением здесь (если вы не хотите начать все сначала).

Пример коррупции:

  • Нет больше ссылок в .git: достаточно было восстановить refs вручную
  • file HEAD больше не существует : "по сравнению с недавно созданным тестовым репозиторием стало очевидно, что один коммит в разделе vfat изменил имя файла HEAD на head ... должно быть политикой по умолчанию для нечувствительных к регистру файловых систем "

Таким образом, идея состоит в том, чтобы клонировать ваш репо и сравнить .git с тем, который вы только что переместили, чтобы увидеть, есть ли какая-либо разница.
Но это предполагает, что вы уже перенесли свое репо в другое место, чтобы иметь возможность клонировать его (поскольку ваше текущее перенесенное репо кажется поврежденным).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...