git 命令操作出现的问题

$ git clone https://github.com/xiaolinbuhuifei/demo2.git
Cloning into 'demo2'...
fatal: unable to access 'https://github.com/xiaolinbuhuifei/demo2.git/': Failed to connect to github.com port 443: Timed out

Git操作失败场景

原来项目中使用Git是正常的,无论是GitHub的项目还是码云的项目,都是可以正常pull和push的。但当将Mac Book的操作系统升级之后,发现Git无法执行pull和push操作,add和commit操作都还是正常的。

网络上的状况和解决方案

如果你不是因为升级操作系统导致的git失效,你可以先尝试一下网络上的解决方案。

场景一

在命令行执行以下命令:

git config --global --unset http.proxy
git config --global --unset https.proxy

场景二

此方案主要针对,git clone时的问题。比如出现如下图的错误:

fatal: unable to access ‘https://github.com/…‘的解决办法插图git clone

解决方案,第一查看git配置:

git config --global -l

第二,查看环境变量:

env|grep -i proxy

执行如下图所示:

fatal: unable to access ‘https://github.com/…‘的解决办法插图1unable to access

场景三

问题状况:

git clone 遇到问题:fatal: unable to access ‘https://github.comxxxxxxxxxxx’: Failed to connect to xxxxxxxxxxxxx

fatal: unable to access ‘https://github.com/…‘的解决办法插图2

解决方法:将命令行里的http改为git重新执行。

fatal: unable to access ‘https://github.com/…‘的解决办法插图3

这个错误的原因主要是协议前缀写错了,导致git clone失败。

场景四

git的push和pull无法使用,状况如下图:

fatal: unable to access ‘https://github.com/…‘的解决办法插图4

解决方案:先ping 代码仓库地址: ping gitlab.alibaba-inc.com

如果报错:

fatal: unable to access ‘https://github.com/…‘的解决办法插图5

则找一台能ping的通的机器,看一下ping通后的ip地址是多少:

fatal: unable to access ‘https://github.com/…‘的解决办法插图6

获得地址之后把ip地址和代码仓库地址加入本机hosts:

fatal: unable to access ‘https://github.com/…‘的解决办法插图7

场景五

错误信息:fatal: unable to access ”: Could not resolve host: github.com – git clone失败。

使用git clone命令时报错:

Cloning into 'GLACNet'...
fatal: unable to access 'https://github.com/tkim-snu/GLACNet.git/': Could not resolve host: github.com

然后执行命令ping github.com,也失败了:

ping: unknown host github.com

解决方案

修改/etc/hosts文件:

sudo vim /etc/hosts

进入vim编辑该文件,在最后一行加入:

192.30.253.112 github.com

wq保存退出,再使用 git 命令就可以了。注意,这里的ip地址可能为变化的,导致这个问题的主要原因就是无法正常访问GitHub官网。

场景六

最后,说一下我遇到的这种升级系统导致的比较特别的问题,由于是在Mac操作系统下,所在命令行中执行如下命令:

brew install git

重新install一下git问题便解决了。执行上述命令,如果卡在“Updating Homebrew…”界面,可以通过按一次control + c命令来阻断Homebrew的更新,直接进行上面命令的操作。




解决:fatal: Authentication failed for ‘https://github.com/xxxx/git-demo.git/‘

git执行语句:git push git-demo master

报错:fatal: Authentication failed for 'https://github.com/xxxx/git-demo.git/'

原因
原因:
在GitHub上采取双因子身份认证后,第一次需要进行认证的是你的登录账号密码,第二次会有一个OpenSSH需要你再一次进行认证,而这个OpenSSH的username是你的用户名,password是你的令牌

解决步骤
当第一次进行 git push git-demo master推送时会弹出此框,填的就是你登录github的账号密码

随后会弹出一个OpenSSH这个框

这里填的是你github的账户名

 

验证之后,还会让你再填password,注意OpenSSH这个框这个password是你的token令牌,你需要去生成你的令牌

 

生成令牌
第一步:点击个人头像,进入Settings

 

第二步:滑到最底部,会有个Developer settings,点进去

 

第三步:generate new token 你的令牌

 

第四步:新建名字,下面选项看着来,全选也没问题

 

第五步:最后拉到底部生成你的token,生成的token就是你OpenSSH里要填的password



posted @ 2022-10-16 13:50  小林不会飞  阅读(588)  评论(0编辑  收藏  举报