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

go get -u @latest没有更新依赖模块

使用 go get -u gitee.com/qingfeng-169/hello-b@latest 时,如果没有进行更新,可能有以下几种原因:

1. 没有发布稳定版本 (vX.X.X)

  • @latest 表示获取该模块最新的稳定版本(即带有 vX.X.X 形式的版本号),而不是最新的 commitbranch
  • 如果模块 gitee.com/qingfeng-169/hello-b 没有发布任何稳定版本(没有 v1.0.0 这样的 tag),那么 @latest 可能不会更新到新版本。

2. 没有新的版本发布

  • 如果 gitee.com/qingfeng-169/hello-b 已经发布了一个稳定版本,并且自上次发布后没有新的稳定版本发布,go get -u @latest 不会更新,因为已经是最新版本。
  • @latest 获取的不是分支上最新的代码,而是最新的发布版本

3. 缓存问题

  • Go 有模块代理和缓存机制,可能本地缓存的版本是最新的,导致 go get -u 没有看到新的更新。如果你想强制清除缓存并重新获取,可以尝试清理 Go 的模块缓存:

    go clean -modcache
    

    然后再执行 go get -u gitee.com/qingfeng-169/hello-b@latest 以确保它从远程获取最新的版本。

解决方案

  • 如果想获取最新的提交或者分支
    使用 @master 或其他分支名来明确指定要更新的分支:

    go get -u gitee.com/qingfeng-169/hello-b@master
    
  • 如果模块没有发布稳定版本

    • 如果模块没有发布稳定版本,你可以考虑使用 @master@<commit> 来获取最新的代码,而不是 @latest,因为 @latest 只能获取最新的发布版本

    @master是git的分支,会拉去该分支的最新代码。
    @<commit>是提交的记录id,会拉该提交记录的版本。

总结

@latest 只更新到最新的稳定版本(带 vX.X.X 版本号的 tag)。如果模块没有发布稳定版本或者你需要最新的分支代码,应该使用 @master 或其他分支名。


http://www.kler.cn/news/307855.html

相关文章:

  • 如何通过深度学习实践来理解深度学习的核心概念
  • Ubuntu 24.04中安装virtualenv
  • QT + WebAssembly + Vue环境搭建
  • JS面试真题 part4
  • 【Spring框架精讲】进阶指南:企业级Java应用的核心框架(Spring5)
  • NX二次开发—批量导出点工具
  • html限制仅有一个音/视频可播放
  • 阿里云社区领积分自动打卡Selenium IDE脚本
  • How to see if openAI (node js) createModeration response “flagged“ is true
  • 代码随想录算法训练营第五十八天 | 拓扑排序精讲-软件构建
  • Arduino IDE离线配置第三方库文件-ESP32开发板
  • 8.JMeter+Ant(基于工具的实现接口自动化,命令行方式)
  • 常见的限流算法
  • 【C/C++】程序的构建(编译)过程概述
  • 【C++】函数重载
  • Python使用pymysql返回字典类型的数据
  • yum本地源配置
  • 基于 SpringBoot 的车辆充电桩管理系统
  • 医药|基于springboot的医药管理系统设计与实现(附项目源码+论文+数据库)
  • JAVA算法数据结构第一节稀疏矩阵
  • ADB ROOT开启流程
  • C# AutoResetEvent ManualResetEvent Mutex 对比
  • 54.【C语言】 字符函数和字符串函数(strncpy,strncat,strncmp函数)
  • ip映射域名,一般用于mysql和redis的固定映射,方便快捷打包
  • python基本数据类型简记
  • vue3 组合式API defineEmits() 与 emits 组件选项
  • I²C通信协议
  • 基于SpringBoot的考研助手系统+LW参考示例
  • 模拟实现通用型排序
  • Rust练手项目,写个有趣的小工具定时从一言网获取一段有趣的话并推送通知