致命的Git:不支持协议'https'

时间:2018-12-31 14:40:25

标签: git

我正在阅读Github的分叉指南:https://guides.github.com/activities/forking/ 并且我正在尝试将存储库克隆到我的计算机上。但是,运行命令:

$ git clone https://github.com/./Spoon-Knife.git
Cloning into 'Spoon-Knife'...
fatal: protocol 'https' is not supported

也尝试使用SSH:

$ git clone git@github.com:./Spoon-Knife.git
Cloning into 'Spoon-Knife'...
Warning: Permanently added the RSA host key for IP address '.' to the list of known hosts.
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.

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

我是否需要在计算机上更改某些配置设置,或者这是GitHub的问题?

编辑:我已将用户名和IP地址替换为“。”

19 个答案:

答案 0 :(得分:11)

不支持协议(https)之前的?。您想要这个:

git clone git@github.com:octocat/Spoon-Knife.git

或者这个:

git clone https://github.com/octocat/Spoon-Knife.git

Selecting the location to clone

编辑: 通过启动新的终端会话解决了这个特定的用户问题。

答案 1 :(得分:9)

问题可能是这样。您之前曾尝试使用 CTRL + V 粘贴它,但此方法不起作用,因此您继续使用经典的 RightClick->粘贴进行粘贴。可悲的是,每当您在终端上输入CTRL + V时,它都会添加一个隐藏的 ^?(至少在我的机器上是这样编码的)字符,只有在退格后才出现(继续在git bash上尝试一下) )。这样您的链接就会变成

^?https://...

这是无效的。

答案 2 :(得分:7)

简单的答案就是删除https

您的回购。 :(git clone https://.......。)

就这样(git clone:// .......)

,然后再次键入(git clone https://.......。)

问题解决了100%...

答案 3 :(得分:2)

发生了一些可疑的事情。可能是一个不一致的github错误(A / B测试?)

我在Windows10上使用Firefox。我刚刚复制了一个结帐网址,并得到了一个额外的字符。但是只有第一次。第二次不在那里。我必须查看我的历史文件才能看到它!

这是我的历史:

git clone --recursive https://github.com/amzeratul/halley-template
git clone --recursive http://github.com/amzeratul/halley-template
git clone --recursive github.com/amzeratul/halley-template
git clone --recursive https://github.com/amzeratul/halley-template

history命令不显示多余的字符。就像当我将其复制粘贴到终端中时未渲染一样。您可以看到我如何尝试删除“ s”,然后删除整个协议吗?当退格键移动的字符比我预期的少一个字符时,我才被触发进一步调查!

我将我的shell历史记录文件保存到具有十六进制编辑器的计算机上,并且:

00000000  xx xx xx xx xx xx xx 0a  67 69 74 20 63 6c 6f 6e  |xxxxxxx.git clon|
00000010  65 20 2d 2d 72 65 63 75  72 73 69 76 65 20 c2 96  |e --recursive ..|
00000020  68 74 74 70 73 3a 2f 2f  67 69 74 68 75 62 2e 63  |https://github.c|
00000030  6f 6d 2f 61 6d 7a 65 72  61 74 75 6c 2f 68 61 6c  |om/amzeratul/hal|
00000040  6c 65 79 2d 74 65 6d 70  6c 61 74 65 0a 67 69 74  |ley-template.git|
00000050  20 2d 2d 68 65 6c 70 0a  67 69 74 20 75 70 64 61  | --help.git upda|
00000060  74 65 2d 67 69 74 2d 66  6f 72 2d 77 69 6e 64 6f  |te-git-for-windo|
00000070  77 73 0a 67 69 74 20 63  6c 6f 6e 65 20 2d 2d 72  |ws.git clone --r|
00000080  65 63 75 72 73 69 76 65  20 c2 96 68 74 74 70 73  |ecursive ..https|
00000090  3a 2f 2f 67 69 74 68 75  62 2e 63 6f 6d 2f 61 6d  |://github.com/am|
000000a0  7a 65 72 61 74 75 6c 2f  68 61 6c 6c 65 79 2d 74  |zeratul/halley-t|
000000b0  65 6d 70 6c 61 74 65 0a  63 75 72 6c 20 2d 2d 76  |emplate.curl --v|
000000c0  65 72 73 69 6f 6e 0a 63  64 20 63 6f 64 65 0a 67  |ersion.cd code.g|
000000d0  69 74 20 63 6c 6f 6e 65  20 2d 2d 72 65 63 75 72  |it clone --recur|
000000e0  73 69 76 65 20 c2 96 68  74 74 70 73 3a 2f 2f 67  |sive ..https://g|
000000f0  69 74 68 75 62 2e 63 6f  6d 2f 61 6d 7a 65 72 61  |ithub.com/amzera|
00000100  74 75 6c 2f 68 61 6c 6c  65 79 2d 74 65 6d 70 6c  |tul/halley-templ|
00000110  61 74 65 0a 67 69 74 20  63 6c 6f 6e 65 20 2d 2d  |ate.git clone --|
00000120  72 65 63 75 72 73 69 76  65 20 c2 96 68 74 74 70  |recursive ..http|
00000130  3a 2f 2f 67 69 74 68 75  62 2e 63 6f 6d 2f 61 6d  |://github.com/am|
00000140  7a 65 72 61 74 75 6c 2f  68 61 6c 6c 65 79 2d 74  |zeratul/halley-t|
00000150  65 6d 70 6c 61 74 65 0a  67 69 74 20 63 6c 6f 6e  |emplate.git clon|
00000160  65 20 2d 2d 72 65 63 75  72 73 69 76 65 20 67 69  |e --recursive gi|
00000170  74 68 75 62 2e 63 6f 6d  2f 61 6d 7a 65 72 61 74  |thub.com/amzerat|
00000180  75 6c 2f 68 61 6c 6c 65  79 2d 74 65 6d 70 6c 61  |ul/halley-templa|
00000190  74 65 0a 67 69 74 20 63  6c 6f 6e 65 20 2d 2d 72  |te.git clone --r|
000001a0  65 63 75 72 73 69 76 65  20 68 74 74 70 73 3a 2f  |ecursive https:/|
000001b0  2f 67 69 74 68 75 62 2e  63 6f 6d 2f 61 6d 7a 65  |/github.com/amze|
000001c0  72 61 74 75 6c 2f 68 61  6c 6c 65 79 2d 74 65 6d  |ratul/halley-tem|
000001d0  70 6c 61 74 65 0a                                 |plate.|
000001d6

在网址之前插入了一个c2 96字符。不知道那是什么。它不是扩展的ASCII码(它是–的地方),在剪贴板上我粘贴的几乎每个位置都隐藏了它。我发现与此十六进制值最接近的是https://www.fileformat.info/info/unicode/char/c298/index.htm,但我在任何地方都看不到utf前缀(再次可能会丢失)

由于我丢失了页面/剪贴板并且仅使用保存的外壳历史记录文件进行工作,这一切可能会产生误导。这很可能会丢失原始错误/恶意注入中的数据。

答案 4 :(得分:2)

  

问题

     

git clone https://github.com/rojarfast1991/TestGit.git   致命:不支持协议“ https”

解决方案:

步骤:

(1):-打开新终端并克隆git存储库

git clone https://github.com/rojarfast1991/TestGit.git

(2)将会打开自动git登录提示,并要求您输入用户凭据。

用户名:-xxxxxxx

密码:-xxxxxxx

最后,克隆将开始...

git clone https://github.com/rojarfast1991/TestGit.git
Cloning into 'TestGit'...
remote: Enumerating objects: 4, done.
remote: Counting objects: 100% (4/4), done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 4 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (4/4), done.

答案 5 :(得分:1)

在Windows 10上全新安装git并首次运行后,我遇到了相同的问题。重新启动bash窗口即可解决问题。

答案 6 :(得分:1)

当我尝试变得聪明并自己从仓库的URL中提取克隆URL时,出现了此错误。我做错了。我在做:

git@https://github.company.com/Project/Core-iOS

我必须要做的:

git@github.company.com:Project/Core-iOS.git

我有3个错误:

  • 不需要https://
  • .com之后,我需要:而不是/
  • 最后我需要一个.git

答案 7 :(得分:1)

即使在most upvoted answer.修复后,此问题仍然存在

更具体地讲,我粘贴的链接中没有“ Ctrl + v”,但仍然给出了fatal: protocol 'https' is not supported

但是,如果您在Windows或Google搜索栏中复制该消息,则实际消息为fatal: protocol '##https' is not supported,其中“#”代表this character。如您所见,这2个字符尚未删除。

我正在使用 IntelliJ IDEA社区版2019.2.3 ,以下修复程序涉及此工具,答案是那两个字符仍然存在并且需要从链接中删除

IntelliJ修复

转到顶部栏,选择VCS-> Git->遥控器...,然后单击。

现在它将打开一些链接

enter image description here

您可以看到这两个无法识别的字符。我们必须删除它们。单击编辑图标并删除这两个字符,或者您可以删除链接并添加一个新的字符。

确保项目文件夹中有“ .git”文件夹

enter image description here

现在它应该像这样。单击“确定”,现在您可以将文件推送到git存储库中。

enter image description here

答案 8 :(得分:1)

如果您使用的是 Git Bash:

不要按ctrl + v粘贴链接, 你可以输入 git clone 右键单击然后粘贴

我希望它有效

答案 9 :(得分:0)

只需在URL中使用双引号,例如:git clone "https://yourRepoUrl"

(它以某种方式显示您在开始时使用了两个引号,不知道为什么)。

我遇到相同的错误=> fatal: protocol ''https' is not supported(您可以在https上看到2个引号)。

答案 10 :(得分:0)

我遇到了同样的问题,我所要做的就是重新启动命令行,然后使用“ cd files”命令导航到document文件夹而不是user文件夹。那应该是所有这些。还要确保链接正确。

答案 11 :(得分:0)

您可能正在使用未登录git hub的Windows或linux计算机,因此未验证证书。从出现错误的系统使用凭据登录到github,然后尝试使用将起作用的命令。祝你好运

答案 12 :(得分:0)

使用 http 代替 https ,它将发出警告消息并重定向到https,将其克隆而没有任何问题

$ git clone http://github.com/karthikeyana/currency-note-classifier-counter.git
Cloning into 'currency-note-classifier-counter'...
warning: redirecting to https://github.com/karthikeyana/currency-note-classifier-counter.git
remote: Enumerating objects: 533, done.
remote: Total 533 (delta 0), reused 0 (delta 0), pack-reused 533
Receiving objects: 100% (533/533), 608.96 KiB | 29.00 KiB/s, done.
Resolving deltas: 100% (295/295), done.

答案 13 :(得分:0)

复制到普通记事本(git clone https://github.com/./Spoon-Knife.git)中,并将其粘贴到cmd中。现在它将起作用。

答案 14 :(得分:0)

我尝试了很多方法来解决此问题。但是我一次又一次失败。然后我这样做了:

打开Git Bash>转到directory> 粘贴 git clone https://shahadat@bitbucket.org/*******.git,此后将显示命令提示符以提供登录凭据。提供凭据并克隆您的项目。

答案 15 :(得分:0)

您尝试了这个:

clt + V

只需右键单击并单击粘贴

希望这会起作用

答案 16 :(得分:0)

只需添加这个 git config --global http.sslVerify false ,这样它就不会检查证书,它应该可以正常工作

答案 17 :(得分:0)

当我尝试通过 Visual Studio 进行克隆时遇到此错误。当我在 powershell 中做同样的事情时,它工作得很好。

答案 18 :(得分:0)

我收到一个与此非常相似的错误,因为我在 URL 周围加上了单引号:

<块引用>

致命:不支持协议“https”

从 URL 中删除单引号解决了问题。