“致命:不是git存储库(或任何父目录)”来自git status

时间:2012-08-14 22:14:22

标签: git repository clone git-clone git-status

此命令用于获取文件并进行编译:

git clone a-valid-git-url

例如:

git clone git://cfdem.git.sourceforge.net/gitroot/cfdem/liggghts

但是,git status(或任何其他git命令)会出现上述fatal: Not a git repository (or any of the parent directories)错误。

我做错了什么?

13 个答案:

答案 0 :(得分:129)

你必须首先进入目录:

$ git clone git://cfdem.git.sourceforge.net/gitroot/cfdem/liggghts
Cloning into 'liggghts'...
remote: Counting objects: 3005, done.
remote: Compressing objects: 100% (2141/2141), done.
remote: Total 3005 (delta 1052), reused 2714 (delta 827)
Receiving objects: 100% (3005/3005), 23.80 MiB | 2.22 MiB/s, done.
Resolving deltas: 100% (1052/1052), done.

$ git status
fatal: Not a git repository (or any of the parent directories): .git
$ cd liggghts/
$ git status
# On branch master
nothing to commit (working directory clean)

答案 1 :(得分:11)

就我而言,是一个环境变量GIT_DIR,我添加了更快的访问权限。

这也破坏了我在SourceTree的所有本地回购:​​(

答案 2 :(得分:7)

我刚收到这条消息,在尝试其他人之前有一个非常简单的答案。在父目录中,键入git init

这将初始化git的目录。然后git addgit commit应该有效。

答案 3 :(得分:3)

在我的情况下,当我尝试使用windows cmd的任何git - 命令(例如git status)时,我遇到了同样的问题。所以我做的是在为窗口https://windows.github.com/安装git之后 在环境变量中,在“PATH”变量上添加git的类路径。通常git将安装在C:/user/"username"/appdata/local/git/bin上,在环境变量

中的PATH上添加它

并且在cmd上还有一件事要转到你的git存储库或cd到你的窗口克隆的位置,通常它们将被存储在github下的文件中

cd Document/Github/yourproject

之后你可以有任何git命令

答案 4 :(得分:3)

我有另一个问题。我在git目录中,但通过符号链接到达那里。我必须直接进入目录(即不通过符号链接)然后它工作正常。

答案 5 :(得分:2)

有时因为ssh。所以你可以用这个:

git clone https://cfdem.git.sourceforge.net/gitroot/cfdem/liggghts

而不是:

git clone git://cfdem.git.sourceforge.net/gitroot/cfdem/liggghts

答案 6 :(得分:1)

简单地说,在克隆回购后,您需要将 (更改当前目录) 添加到新的克隆文件夹

git clone https://User_Name@bitbucket.org/Repo_Name.git

cd Repo_Name

答案 7 :(得分:1)

就我而言,原始存储库是一个裸存储库。

所以,我必须输入(在windows中):

mkdir   dest
cd dest
git init
git remote add origin a\valid\yet\bare\repository
git pull origin master

检查存储库是否是裸存储库:

git rev-parse --is-bare-repository 

答案 8 :(得分:1)

git clone https://github.com/klevamane/projone.git
Cloning into 'projone'...
remote: Counting objects: 81, done.
remote: Compressing objects: 100% (66/66), done.
remote: Total 81 (delta 13), reused 78 (delta 13), pack-reused 0
Unpacking objects: 100% (81/81), done.

你必须" cd projone"

然后你可以查看状态。

一开始很难注意到这一点的原因之一,因为您在计算机中创建了一个具有相同名称的文件夹,这是您将项目克隆到的位置,因此您必须再次更改目录

答案 9 :(得分:1)

如果计划使用VS Code在TSF上迁移现有项目解决方案,则:

打开终端并运行以下命令:

  1. 初始化该文件夹(根目录)中的git

    git init

  2. 添加 Git

    git add .

  3. 链接您的TSf / Git到该项目-{url}替换为您的git地址

    git remote add origin {url}

  4. 提交这些更改:

    git commit -m "initial commit"

  5. 推送-我将代码作为version1推送,您可以为分支使用任何名称

    git push origin HEAD:Version1

答案 10 :(得分:0)

我突然在任何试图从以下位置运行任何git命令的目录中出现错误:

fatal: Not a git repository: /Users/me/Desktop/../../.git/modules/some-submodule

对我来说,事实证明我在桌面上有一个隐藏文件.git,内容如下:

gitdir: ../../.git/modules/some-module

删除该文件并修复。

答案 11 :(得分:0)

当我尝试使用 git init 初始化git时,此错误已解决。有效

答案 12 :(得分:0)

我在办公室网络中也遇到同样的问题。 我使用此命令,但对我不起作用 网址,  像这样: 之前 $ git clone https://gitlab.com/omsharma/Resume.git

之后:我使用以下网址:$ git clone https://my_gitlab_user@gitlab.com/omsharma/Resume.git 试试吧。