фатальный не репозиторий git (или любой из родительских каталогов).git
это ошибка, которую я получаю, когда пытаюсь выполнить любую операцию git в моем репо.
Я внесла некоторые изменения в мой проект, который является репо, а затем я пытаюсь выполнить git статус, чтобы просмотреть мои изменения и встретить эту ошибку. Я искал эту ошибку, но ничего не сделал. Похоже, эта ошибка наиболее распространена при попытке выполнить операции git в каталоге, находящемся за пределами репо, что не подходит для меня.
Также я попытался проверить мои ./git/HEAD и ./git/logs/refs/heads, оба из которых являются пустыми.. / git/logs/refs/remotes/origin/master также пуст.
Итак, с самого начала:
- Я сделал проект Android в этом каталоге на одном компьютере.
- Я инициировал git в этом каталоге и разместил его на github.
- Я следил за обычными онлайн-гидами, чтобы вытащить это репо на 2 других
компьютеры.
- Сделал некоторые изменения на другом компьютере, нажал изменения на
Сделки РЕПО.
- Затем на исходном компьютере я успешно выполнил изменения.
- Не работая над проектом в течение нескольких дней, я внесла некоторые изменения
на исходном компьютере, попытался статус git, и это произойдет.
Ответ 1
В моем случае случайно .git/HEAD
файл был испорчен неизвестными символами, но файл .git/ORIG_HEAD
был в порядке (он имеет идентификатор фиксации). Итак, я скопировал содержимое .git/ORIG_HEAD
в файл .git/HEAD
. Затем перезапустили IDE (Aptana), и все сработало нормально.
Ответ 2
Убедитесь, что в текущем сеансе нет переменной окружения 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 .
(и продолжайте работать в этом новом клоне)
Ответ 3
У меня тоже была такая же проблема. Проблема заключалась в том, что моя папка git синхронизировалась с облачным сервисом UbuntuOne. Это испортило файлы, добавив файлы, добавленные с помощью u1conflict. И мой .git/HEAD также был испорчен как .git/HEAD.u1conflict.
Используете ли вы службы облачных служб на git? Dropbox, UbuntuOne и т.д. Вероятно, ваша папка .git могла быть запутана в процессе синхронизации.