ПРИМЕЧАНИЕ: это не отвечает на общую проблему, которая была проблемой OP, но на другую проблему, где может появиться это сообщение об ошибке. Я не хотел задавать новый вопрос, просто чтобы записать этот ответ, и скажите мне, если я должен сделать это вместо этого: P
Я попал в ситуацию, скорее всего, из-за некоторого искажения определенного сбоя, что я получил эту ошибку, даже когда .gitона существовала.
smar@aaeru ~/P/Nominatim> git status
fatal: Not a git repository (or any of the parent directories): .git
smar@aaeru ~/P/Nominatim [128]> ls .git
COMMIT_EDITMSG config* FETCH_HEAD HEAD index logs/ modules/ objects/ ORIG_HEAD packed-refs
Поскольку у меня не было ничего, что действительно нуждалось в сохранении, я просто пошла глупым путем и сделала ...
smar@aaeru ~/P/Nominatim [128]> git init
Reinitialized existing Git repository in /home/smar/Projektit/Nominatim/.git/
Тем не менее, не работает, как, например, git logвозвращает fatal: bad default revision 'HEAD'. Правда, там были удаленные действия , поэтому я сделал это, git fetch --allа затем просто пришел git reset --hard origin/masterв состояние, в котором был репо.
Обратите внимание, что если есть некоторые незафиксированные изменения, вы можете увидеть их с помощью git status, git diffи так далее. Затем git diff yourfile > patchперед запуском перезагрузки.
По крайней мере, для меня reflog ( git reflog) исчез полностью. Следовательно, если вы делаете сброс, и вы хотели предотвратить некоторые изменения, я не уверен, что вы сможете вернуть их после сброса. Поэтому убедитесь, что у вас есть все резервные копии изменений, которые вы не можете потерять, в конечном итоге, просто скопировав клон, прежде чем пытаться это сделать.
git initно также убедитесь, что ни одна из ваших подкаталогов не имеет своей собственной.gitпапки