在Windows上进行Git克隆:git@github.com不是一个git命令。

3
我正在尝试通过ssh从GitHub和GitLab上克隆一个代码仓库。
我使用的是Windows操作系统,Git版本为v2.29.2.2。
我遇到了以下错误,但我不知道这个错误是什么原因导致的:
$ git clone git@github.com:math-gallou/AI21_TPs.git
Cloning into 'AI21_TPs'...
git: 'git@github.com' is not a git command. See 'git --help'.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

所以我也尝试了:

$ git clone "ssh://git@github.com:math-gallou/AI21_TPs.git"

and

$ git clone ssh://git@github.com:math-gallou/AI21_TPs.git

但是,完全相同的错误仍然出现。

当我执行ssh -v git@github.com时,成功连接。

那我错过了什么?


你安装了哪个版本的Git-for-Windows? - Dai
提示(也许没有帮助,但无论如何):对于 ssh:// URL,语法略有不同:git clone ssh://git@github.com/math-gallou/AI21_TPs.git(斜杠 / 而不是冒号 :)。请参见 https://git-scm.com/docs/git-fetch#_git_urls。 - phd
3个回答

1

首先,如果您正在尝试使用ssh://语法,则URL应为:


git clone ssh://git@github.com/math-gallou/AI21_TPs.git
                            ^^^ /, not :

其次,检查您是否拥有一个 %USERPROFILE%\.ssh\config 文件,并在其中找到一个 github.com 的 Host 条目,其内容可能不正确或被错误解释。

所以我首先尝试了你给我的语法,但是完全相同的错误仍然显示。 其次,我没有这个配置文件,我会找出它是什么以及它应该包含什么。 - mathoug
@mathoug 好的,配置文件怎么样? - VonC
嗨@VonC。我按照这篇文章的指示进行了配置文件:https://dev59.com/nFMI5IYBdhLWcg3waqs4。但是它完全没有改变任何东西。和朋友一起,我们在考虑是否有一个奇怪的别名在某个地方?但我尝试清理我的git安装(删除并重新安装所有内容),但仍然是一样的... :/ - mathoug
@mathoug 你能试着使用简化的路径吗?(例如 https://dev59.com/5Lvoa4cB1Zd3GeqPxyKt#63835684) - VonC
更糟糕的是哈哈,现在我得到了“bash:git:命令未找到”的错误。 - mathoug
@mathoug 我向你保证,已经简化了路径以引用 git,请仔细检查您的路径。确保 GH 指向您的 Git 安装文件夹。 - VonC

0
在我的情况下,我定义了系统环境变量GIT_SSH来使用我安装的openssh,然后git出现了问题,我得到了“git:'git@github.com'不是git命令。请参阅'git --help'。”
删除系统环境变量GIT_SSH后,一切都正常了。
然后我尝试定义用户环境变量GIT_SSH并重新启动系统(之前的尝试中我没有重新启动系统),不知何故,现在我的git可以正确地使用我安装的openssh。我不知道我以前的哪个部分有问题,但我决定不再浪费时间在这上面了。

0

更新你的 Git 可能会有帮助!我通过使用 git update 解决了这个问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接