【golang开发中的常见错误】【配置 .gitconfig,让go mod tidy速度飞起】

2023-10-19 19:59

本文主要是介绍【golang开发中的常见错误】【配置 .gitconfig,让go mod tidy速度飞起】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

问题一:invalid pseudo-version: preceding tag (v1.0.0) not found

远端GIT仓库删除tag后的报错:invalid pseudo-version: preceding tag (v1.0.0) not found

golang项目开发中,本地go mod tidy和go get -u都报错,找不到对应版本号。重点报错如下:

invalid pseudo-version: preceding tag (v1.0.0) not found

解决思路

1、猜测引用了老的包文件,查找对应的缓存包并手动rm删除,发现还是报同样的错误,重新下载也是找老的版本。所以手动清理缓存包不彻底。

2、使用go clean --modcache清除所有的缓存即可。

注意

1、清理缓存包之前尽量备份,防止有些包远程已拉不到。

2、会清理所有的缓存包,重新下载时间较长,耐心等待。

问题二:missing dot in first path element

missing dot in first path element类似的错误。或者包路径对但是无法跳转。

解决思路

1、查看是否有重复的go.mod文件

2、go.mod 重复require了本地的文件包,删掉即可。

问题三:修改文件名后,文件路径导入报错

解决思路

go mod tidy基本能搞定。

问题四:go mo tidy报错verifying module: checksum mismatch

解决思路

1、go clean --modcache

rm -fr go.sum

go mod tidy

2、上述方法不行,尝试修改GOPROXY,亲测有效

export GOPROXY="https://goproxy.cn"

go mod tidy

问题五:能正常clone代码,但是go mod tidy卡死。

解决思路

1、常见于公司对git验证方式不同,比如禁掉了用户名密码登录认证。

2、尝试使用https或者ssh两种方式clone拉代码,发现https让输入密码,ssh免密正常clone(提前加了ssh key)。设置ssh替换https即可解决:

git config --global url."git@自己的代码库域名:".insteadOf "https://自己的代码库域名/"。反之亦然。例如:

git config --global url."git@github.com:".insteadOf "https://github.com"

3、设置GONOPROXY:go env -w GONOPROXY=自己的代码库域名,其他库域名

问题六:go mod tidy或者go get拉github代码非常慢。配置 .gitconfig,让go mod tidy速度飞起

解决思路

1、让私有仓库走不走代理,让github.com走代理。

(1)指定github走自己的代理。127.0.0.1:8888是你的本机代理地址和端口(自行解决代理问题)

vim ~/.gitconfig

[http "https://github.com"]proxy = socks5://127.0.0.1:8888
[https "https://github.com"]proxy = socks5://127.0.0.1:8888

或者直接执行:git config --global http.https://github.com.proxy socks5://127.0.0.1:8888

(2)私有仓库配置。example.com替换为私有库地址。可写多个。这里用的zsh,直接vim ~/.zshrc

export GONOPROXY=example1.com,example2.com
export GONOSUMDB=example1.com,example2.com
export GOPRIVATE=example1.com,example2.com

最后注意让环境变量生效:source ~/.zshrc

(3)以上两步配置好之后,再试试go mod tidy

问题六:LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to xxx

解决思路

搬运:Git - SSL_ERROR_SYSCALL 问题解决 | hyperzsb's ideas

brew install可能经常会遇到,因为brew没走代理,和git走代理配置不太一样,brew配置代理,直接使用的是环境变量:

export https_proxy=http://127.0.0.1:8888 http_proxy=http://127.0.0.1:8888 all_proxy=socks5://127.0.0.1:8888

或者直接在你的代理软件,使用复制终端代理命令:执行即可。

骚操作记录

 1、module declares its path as:xxxx

 but was required as:

解决思路:直接go get对应的包。或者git clone下来,去那个包go mod tidy下又好了。

这篇关于【golang开发中的常见错误】【配置 .gitconfig,让go mod tidy速度飞起】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/242034

相关文章

SpringBoot结合Knife4j进行API分组授权管理配置详解

《SpringBoot结合Knife4j进行API分组授权管理配置详解》在现代的微服务架构中,API文档和授权管理是不可或缺的一部分,本文将介绍如何在SpringBoot应用中集成Knife4j,并进... 目录环境准备配置 Swagger配置 Swagger OpenAPI自定义 Swagger UI 底

MySQL 索引简介及常见的索引类型有哪些

《MySQL索引简介及常见的索引类型有哪些》MySQL索引是加速数据检索的特殊结构,用于存储列值与位置信息,常见的索引类型包括:主键索引、唯一索引、普通索引、复合索引、全文索引和空间索引等,本文介绍... 目录什么是 mysql 的索引?常见的索引类型有哪些?总结性回答详细解释1. MySQL 索引的概念2

Oracle迁移PostgreSQL隐式类型转换配置指南

《Oracle迁移PostgreSQL隐式类型转换配置指南》Oracle迁移PostgreSQL时因类型差异易引发错误,需通过显式/隐式类型转换、转换关系管理及冲突处理解决,并配合验证测试确保数据一致... 目录一、问题背景二、解决方案1. 显式类型转换2. 隐式转换配置三、维护操作1. 转换关系管理2.

Python38个游戏开发库整理汇总

《Python38个游戏开发库整理汇总》文章介绍了多种Python游戏开发库,涵盖2D/3D游戏开发、多人游戏框架及视觉小说引擎,适合不同需求的开发者入门,强调跨平台支持与易用性,并鼓励读者交流反馈以... 目录PyGameCocos2dPySoyPyOgrepygletPanda3DBlenderFife

使用Python开发一个Ditto剪贴板数据导出工具

《使用Python开发一个Ditto剪贴板数据导出工具》在日常工作中,我们经常需要处理大量的剪贴板数据,下面将介绍如何使用Python的wxPython库开发一个图形化工具,实现从Ditto数据库中读... 目录前言运行结果项目需求分析技术选型核心功能实现1. Ditto数据库结构分析2. 数据库自动定位3

Go语言使用select监听多个channel的示例详解

《Go语言使用select监听多个channel的示例详解》本文将聚焦Go并发中的一个强力工具,select,这篇文章将通过实际案例学习如何优雅地监听多个Channel,实现多任务处理、超时控制和非阻... 目录一、前言:为什么要使用select二、实战目标三、案例代码:监听两个任务结果和超时四、运行示例五

IDEA中配置Tomcat全过程

《IDEA中配置Tomcat全过程》文章介绍了在IDEA中配置Tomcat的六步流程,包括添加服务器、配置部署选项、设置应用服务器及启动,并提及Maven依赖可能因约定大于配置导致问题,需检查依赖版本... 目录第一步第二步第三步第四步第五步第六步总结第一步选择这个方框第二步选择+号,找到Tomca

Django开发时如何避免频繁发送短信验证码(python图文代码)

《Django开发时如何避免频繁发送短信验证码(python图文代码)》Django开发时,为防止频繁发送验证码,后端需用Redis限制请求频率,结合管道技术提升效率,通过生产者消费者模式解耦业务逻辑... 目录避免频繁发送 验证码1. www.chinasem.cn避免频繁发送 验证码逻辑分析2. 避免频繁

Win10安装Maven与环境变量配置过程

《Win10安装Maven与环境变量配置过程》本文介绍Maven的安装与配置方法,涵盖下载、环境变量设置、本地仓库及镜像配置,指导如何在IDEA中正确配置Maven,适用于Java及其他语言项目的构建... 目录Maven 是什么?一、下载二、安装三、配置环境四、验证测试五、配置本地仓库六、配置国内镜像地址

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用