Git clone 时遇到 fatal:\ protocol 'https' is not supported问题解决方案
在 Git Bash 里执行 clone 命令时,有时候会莫名其妙报错protocol ''https'' is not supported
,这是为什么呢?
本篇文章带你理解这个报错的由来,以及对应的解决方式。
一、问题来因
今天在整合项目时需要将码云上的仓库clone
下来,在 Git Bash 里执行 clone命令报错protocol ''https'' is not supported
,经过一番查找,找到了原因,分享给大家,其实也是我们常犯的一个错误。
二、寻找解决方案
开始在CSDN上找各种解决办法,并没有任何成果,遇到的问题情况和我都不一样。
我一直秉承的思想是问题不能只有解决了才行,我们应该去找到问题产生的原因。
最后在stackoverflow
上找到了解决方案和原因,其中是这么写到的:
You tried to paste it using
- CTRL +V
before and it didn’t work so you went ahead and pasted it with classic
- Right Click - Paste**.
Sadly whenever you enter CTRL +V on terminal it adds
- a hidden ^?
(at least on my machine it encoded like that).
the character that you only appears after you
- backspace
(go ahead an try it on git bash).
So your link becomes
^?https://...
which is invalid.
什么意思呢?就是说我们在粘贴地址时使用了 CTRL +V
, 在Git Bash中没有效果,然后我们就会使用右键菜单中的粘贴,但是不幸的是,使用 CTRL +V
会在Git Bash 中添加一个隐藏的符号 ^?
。
当你在粘贴仓库链接时使用了CTRL +V
后
在GIt Bash 中你的克隆语句可能显示是这样正常的:
git clone https://gitee.com/qianfanguojin/homework_1.git |
但真实语句其实是这样的:
git clone ^?https://gitee.com/qianfanguojin/homework_1.git |
链接前面多了符号,协议变成了^https
,肯定不能克隆成功,提示协议不支持。
三、问题解决办法
解决问题的办法也很简单,将使用了CTRL +V
的克隆语句删除重新编写,但是记得粘贴链接时不要使用CTRL +V
即可。
这个问题也提醒我们不要在 命令行中乱用 CTRL +V
或是CTRL +C
这类快捷键,可能会出现莫名其妙的BUG。
四、参考链接
https://stackoverflow.com/questions/53988638/git-fatal-protocol-https-is-not-supported