我正在遵循这个教程。一切都很好,直到我在我的本地机器上运行这个(在用它们的实际值替换$VARIABLEs之后):

git remote add nfsn ssh://$USERNAME@$SERVER/home/private/git/$REPONAME.git

我收到以下错误信息:

致命:不是一个git存储库(或任何父目录):.git

我如何通过这一步?


当前回答

我刚刚在我的目录下重新初始化了git

git init 

这个方法奏效了

其他回答

我知道已经有很多答案了,但是如果你修改了一堆文件,你仍然害怕失去工作。

注:以上大部分解决方案对我来说都不适用。

我也遇到了同样的问题,所以我做了一个变通方案。

git clone <same project>
git checkout <to desired branch>//changed to respective branch
git branch // verify if you have same branch set 
git pull

然后将.git目录复制到旧目录中(为了代码安全,请保存一份回购副本)。

执行git status,这将重新索引文件。你会让它重新工作的。

谢谢,希望能对一些人有所帮助。

转到本地repo存储的源文件夹,例如我的在c:/GitSource中,右键单击文件夹,在这里单击git bash,然后单击git状态....

在我的例子中,我使用了Tortoise SVN,并犯了同时使用Visual Studio GIT函数的错误。这使得Visual Studio将HEAD文件锁定在。git文件夹中,因此VS和Tortoise都无法访问repo,我从两个应用程序中都得到了“fatal: Not a git repo…”错误。

解决方案:

进入。git文件夹并重命名“HEAD. git”。锁定"到"HEAD" 决定使用一个GIT管理应用程序,不要使用另一个

当我的客户Smartgit在我的.git/HEAD文件中放了一个换行符时,发生在我身上。删除空行可以解决这个问题。

恢复.git/ORIG_HEAD和其他根.git回购文件

从备份恢复后,我得到了这个错误,显然。git目录根中包含的文件没有到目标,但所有的子文件夹都这样做了,起初我以为回购是完整的。

我通过恢复根文件来修复它。