2013-09-22 2 views
6

фатального не репозиторий Git (или любые из родительских каталогов) .git это ошибка, я получаю, когда я пытаюсь выполните любую операцию git на моем репо. Я внесла некоторые изменения в мой проект, который является репо, и я пытаюсь git status посмотреть мои изменения и встретить эту ошибку. Я искал эту ошибку, но ничего не сделал. Похоже, эта ошибка наиболее распространена при попытке выполнить операции git в каталоге, находящемся за пределами репо, что не подходит для меня. Кроме того, я попытался проверить мой ./git/HEAD и ./git/logs/refs/heads оба из которых являются пустыми файлами. ./git/logs/refs/remotes/origin/master также пуст.мерзавец фатальным не репозиторий (или любые из родительских каталогов) .git

Так что с самого начала:

  • Я сделал Android проект в этом каталоге на одном компьютере.
  • Я инициировал git в этом каталоге и разместил его на github.
  • Я следил за обычными онлайн-гидами для вытягивания этого репо на 2 других компьютерах .
  • Сделал некоторые изменения на другом компьютере, нажал изменения на репозиторий .
  • Затем на исходном компьютере я успешно вытащил изменения.
  • Не работая над проектом в течение нескольких дней, я внесла некоторые изменения на исходный компьютер, попытался git статус, и это происходит.

ответ

6

Убедитесь, что вы не имеете переменную GIT_DIR или GIT_WORK_TREE среды, установленные в текущей сессии, которая будет указывать на неверную папку.

В сомневаетесь, попробуйте:

cd /path/to /your/repo 
git --git-dir .git --work-tree . status 

Если это все-таки не удается, попробуйте по крайней мере клонировать этот репозиторий снова из GitHub, и добавить последние изменения в этой новой репо:

cd /path/to/new/clone 
git --git-dir .git --work-tree /path/to /your/repo add . 

(и продолжайте работать в этом новом клоне)

+0

Я не могу использовать какие-либо команды git на пути моего репо. Любые команды git просто возвращают ошибку «не репо». Как еще я могу проверить свой GIT_DIR или GIT_WORK_TREE? – xyals

+0

@ user2804884 попробовал первую команду git, которую я упомянул в своем ответе, хотя? – VonC

+1

Я пробовал, что по пути моего репо, и он ответил на ошибку – xyals

6

У меня тоже была такая же проблема. Проблема заключалась в том, что моя папка git синхронизировалась с облачным сервисом UbuntuOne. Это испортило файлы, добавив файлы, добавленные с помощью u1conflict. И мой .git/HEAD был также испорчен как .git/HEAD.u1conflict.

Вы используете какие-либо облачные сервисные службы на git? Dropbox, UbuntuOne и т. Д. Скорее всего, ваша папка .git может быть запутана в процессе синхронизации.

9

В моем случае случайно .git/HEAD файл был перепутан с неизвестными символами, но .git/ORIG_HEAD файл был в порядке (он имеет идентификатор фиксации). Итак, я скопировал содержимое .git/ORIG_HEAD в файл .git/HEAD. Затем перезапустили IDE (Aptana), и все сработало нормально.

+0

Я столкнулся с этой проблемой, когда увидел, что мой компьютер упал с пустым символом NULL в файле .git/HEAD после моего компьютера. Первый признак, который я заметил, это полная потеря всего в истории после того, как «git log» завершился неудачей с сообщением 128: fatal: Not git repository ... ». Этот плавный ход восстановил ситуацию. – RacerNerd

Смежные вопросы