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

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

我收到以下错误信息:

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

我如何通过这一步?


当前回答

在我的案例中,我发现窗口中的git从某种程度上对驱动器号变得区分大小写。

升级后的git二进制在windows cli命令,用来工作停止。 例如,脚本中的路径是D:\bla\file.txt,而git命令只接受D:\bla\file.txt

其他回答

对我来说,只有当一个人试图从非git目录(即从其他目录,这不是工作副本)执行git命令时,才会出现问题。

要修复此问题,请在git命令中添加-C <git dir> git status将变为git -C /dir/to/git status, git add -A将变为git -C /dir/to/git -A。

我的问题是,对于我的操作系统的一些问题,我的本地存储库上的任何命令都以“fatal: Not a git repository(或任何父目录):.git”结尾,其中包括fsck命令。

问题是空的HEAD文件。

我能够找到我在.git/refs/heads中工作过的实际分支名称,然后我这样做:

echo 'ref: refs/heads/ML_#94_FILTER_TYPES_AND_SPECIAL_CHARS' > .git/HEAD

它工作。

当我在文件系统上移动git项目的位置时,出现了这个问题。当我运行一些git命令时,错误发生了,例如:

$ git status
fatal: Not a git repository: /home/rospasta/path_old/gitprojecta/.git/modules/.travis

我发现在/home/rospasta/path_old/gitprojecta/.travis/。Git的绝对路径的旧位置的项目被写入。手动更新新位置的路径为我解决了这个问题。

所以我的问题可能是也可能不是git问题,而是HTH。

如果您尝试在当前工作目录不在Git存储库中时使用Git命令,则会出现此错误。这是因为,默认情况下,Git会寻找一个。Git存储库目录(在项目根目录内?),正如我对“Git不会显示日志,除非我在项目目录中”的回答所指出的那样:

根据官方的Linux内核Git文档, GIT_DIR是[一个环境变量],用于查找.git目录(在当前目录中) 工作目录?) 如果设置了GIT_DIR环境变量,则它将指定要使用的路径,而不是默认的.git 存储库。

你要么需要cd到存储库/工作副本中,要么你没有初始化或克隆存储库,在这种情况下,你需要在你想放置repo的目录中初始化一个repo:

git init

或者克隆存储库

git clone <remote-url>
cd <repository>

如果您在自托管的GitHub操作日志中看到此错误,那么可能是您没有使用GitHub操作支持的最新git版本。

要知道它支持哪个版本,请转到操作/签出日志并将您的服务器git版本升级到上述版本或更高版本。