当前位置: 首页 > news >正文

Git报错解决

        本篇主要汇总在使用 Git 进行提交和拉取文件时,遇到的问题的解决方案,以便下次查找。

1 关于使用Git出现“git Failed to connect to 127.0.0.1 port xxxx: Connection refused”的问题解决方案

1. 问题描述

        在使用 git 拉取、提交代码的时候,会出现 git Failed to connect to 127.0.0.1 port xxxx: Connection refused 的问题。

        原因:无法连接到127.0.0.1: xxx端口: 连接被拒绝。

2. 解决方案
方案一:
        思路:查询当前是否有代理,如果有就取消。

// 首先,查一下当前全局的 http 代理:
git config --global http.proxy
// 如果有代理,就取消
git config --global --unset http.proxy// 再查 https 的代理:
git config --global https.proxy
// 同样的,有就取消
git config --global --unset https.proxy

方案二

        上面的方案如果不行的话,再参考这个方案

// 首先,查一下代理:
env|grep -i proxy
// 有就取消
unset http_proxy
unset https_proxy// 再查
env|grep -i proxy
// 正常情况下是没有代理了
// 再次查询一下,如果还有的再取消

方案三

  • 修改环境变量
  • 在系统变量中找到了变量http_proxyhttps_proxy,用户变量也可以看看有没有,删除他就可以了。
  • 重启计算机。
  • 再用 git,正常了,再查env|grep -i proxy,代理没有了。

3. 小结

        代理没有了,就可以正常拉取、提交代码了。

本部分参考自:关于使用Git出现“git Failed to connect to 127.0.0.1 port xxxx: Connection refused”的问题解决方案

2 error: src refspec master does not match any

1. 问题描述

        在将本地项目上传到新建的仓库时,出现了下图的错误:

        问题的内容是:

  • 错误:SRC ReFSPEC 主控器不匹配任何。
  • 错误:未能将某些引用推到 git@github.com:molimi/MyBlog.git

2. 解决方案

        其实只需要进行下面几步就能把本地项目上传到Github

  1. 在本地创建一个版本库(即文件夹),通过git init把它变成Git仓库;
  2. 把项目复制到这个文件夹里面,再通过git add .把项目添加到仓库;
  3. 再通过 git commit -m "注释内容" 把项目提交到仓库;
  4. 在Github上设置好SSH密钥后,新建一个远程仓库,通过 git remote add origin https://github.com/molimi/MyBlog.git 将本地仓库和远程仓库进行关联;
  5. 最后通过 git push -u origin master 把本地仓库的项目推送到远程仓库(也就是Github)上;(若新建远程仓库的时候自动创建了README文件会报错,解决办法看上面)。

本部分参考自:error: src refspec master does not match any. 错误的解决办法

3 fatal: unable to access ‘https://XXX/’: OpenSSL SSL_read: Connection was reset, errno 10054

1. 问题描述

        之前关联的github库没办法上传(push)了,提示本地库不存在。于是做了

git init  # 初始化资源库
git remote-v origin https://http://github.com/我的库  # 将本地库与远程库做关联,
git pull      # 先将线上的资源拉取下来。

        问题出在了git pull的时候,提示错误

fatal: unable to access 'http://github.com/我的库/': OpenSSL SSL_read: Connection was reset, errno 10054

        报错原因:

  • 字面意思:服务器的SSL证书灭有经过第三方机构的签署。
  • 网上信息也有的说可能是网络不稳定,连接超时导致。

2. 解决方案
        修改设置,解除SSL验证。打开 命令行工具, 输入:

git config --global http.sslVerify "false"
git config --global https.sslVerify "false"

        真实原因是DNS被污染,国内ping到的github.com可能是被篡改过的。自己修改hosts把github的正确IP加进去就可以了。

4 remote: error: File:1f6cc8452313 157.10 MB, exceeds 100.00 MB

1. 问题描述

        根据报错原因提示 Gitee免费用户单个文件最大100M,因此只能上传小于100M文件

(1) 查看大文件名称

$ git rev-list --objects --all | grep 9fc69e9816e94fb5bde1f86b31581d7ec12ede3b
9fc69e9816e94fb5bde1f86b31581d7ec12ede3b 2023/项目实战/NotPush/pytorch_resnet50.pth

        查出来了原来是2023/项目实战/NotPush/pytorch_resnet50.pth这个文件大于100M了。

        当然,你也可以执行下列代码:,查出历史提交的最大文件。

$ git rev-list --objects --all | grep "$(git verify-pack -v .git/objects/pack/*.idx | sort -k 3 -n | tail -5 | awk '{print$1}')"

2. 解决方案

(1) 在提交中删除该文件

git filter-branch --force --index-filter  "git rm --cached --ignore-unmatch 2023\\项目实战\\NotPush\\pytorch_resnet50.pth"  --prune-empty --tag-name-filter cat -- --all
  • 若改行代码报错:Cannot rewrite branches: You have unstaged changes
  • 解决方案:先执行:git stash,再执行一遍该命令即可。

(2) 重新提交

        以强制覆盖的方式推送你的repo, 命令如下:

git push origin master --force

(3) 清理和回收空间

        虽然上面我们已经删除了文件, 但是我们的repo里面仍然保留了这些objects, 等待垃圾回收(GC), 所以我们要用命令彻底清除它, 并收回空间,命令如下:

rm -rf .git/refs/original/git reflog expire --expire=now --allgit gc --prune=now      # 执行命令 清楚本地缓存刷新
http://www.lryc.cn/news/204379.html

相关文章:

  • TechSmith Camtasia 2023 for Mac 屏幕录像视频录制编辑软件
  • 高效MMdetection(3.1.0)环境安装和训练自己数据集教程(实现于Linux(ubuntu),可在windows尝试)
  • 软考-入侵检测技术原理与应用
  • openGaussDatakit让运维如丝般顺滑!
  • 整理MongoDB文档:身份验证
  • 逐字稿 | 视频理解论文串讲(下)【论文精读】
  • 【C++入门:C++世界的奇幻之旅】
  • rancher2.6.4配置管理k8s,docker安装
  • ​​​​​​​Python---练习:使用while嵌套循环打印 9 x 9乘法表
  • 仅手机大小!极空间T2随身数据魔盒发布:既是NAS 又是U盘
  • 设计院图纸加密防泄密方案——天锐绿盾加密软件@德人合科技
  • AD9371 官方例程HDL详解之JESD204B TX侧时钟生成 (二)
  • 实用新型和发明的区别
  • Oracle通过透明网关查询SQL Server 报错ORA-00904
  • MySQL表操作—存储
  • Android Studio Gradle中没有Task任务,没有Assemble任务,不能方便导出aar包
  • 重复性管理--从泛值到泛型以及泛函(中)--泛函是什么及为什么
  • Arm推出Total Design生态系统,优化基于Neoverse CSS的SoC开发流程
  • 30天精通Nodejs--目录与说明
  • 如何创建前端绘图和图表?
  • Python基础入门例程3-NP3 读入字符串
  • 每日一练 | 网络工程师软考真题Day44
  • Python11-正则表达式
  • 【机器学习】XGBoost
  • 如何复制禁止复制的内容
  • 多通道图片的卷积过程
  • uniapp canvas 无法获取 webgl context 的问题解决
  • Spring底层原理(二)
  • springboot188基于spring boot的校园商铺管理系统
  • 【计网 DNS】计算机网络 DNS协议详解:中科大郑烇老师笔记 (六)