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

当牛做吗网站源代码分享win7 搭建iss网站

当牛做吗网站源代码分享,win7 搭建iss网站,知名电商平台有哪些,深圳向失业人员发放补贴文章目录 项目背景问题 1:go get -u gorm.io/gorm 会覆盖旧版本吗?问题 2:如何删除旧版本?注意事项总结 在 Go 项目开发中,管理依赖版本和清理旧版本是保持项目高效和整洁的重要步骤。本文将基于一个grom example&…

文章目录

    • 项目背景
    • 问题 1:`go get -u gorm.io/gorm` 会覆盖旧版本吗?
    • 问题 2:如何删除旧版本?
    • 注意事项
    • 总结

在 Go 项目开发中,管理依赖版本和清理旧版本是保持项目高效和整洁的重要步骤。本文将基于一个grom example(位于 https://gorm.io/docs/),分享如何更新依赖(如 gorm.io/gorm)和删除旧版本的经验。

项目背景

我的项目使用 GORM 操作 SQLite 数据库,代码在 gorm/crud.go 中,go.mod 位于父目录 /home/lizhi/go/src/go-grom,整个本地项目结构和内容如下:

~/go/src/go-grom$ tree
.
├── go.mod
├── go .sum
└── grom└── crud.go
module go-gromgo 1.21require (gorm.io/driver/sqlite v1.5.5gorm.io/gorm v1.25.7
)

我运行了 go get -u gorm.io/gorm 更新依赖,并想清理旧版本(如 v1.25.7)。

问题 1:go get -u gorm.io/gorm 会覆盖旧版本吗?

我想知道运行 go get -u gorm.io/gorm 是否会覆盖旧版本(例如 v1.25.7)。

答案

  • 本地缓存:不会覆盖旧版本。Go 模块缓存(/home/lizhi/go/pkg/mod)保留所有版本。例如,旧版本 gorm.io/gorm@v1.25.7 和新版本 v1.26.0 并存。
  • go.mod 文件:会更新版本。运行 go get -u gorm.io/gormgo.mod 中的 v1.25.7 更新为最新版本(例如 v1.26.0)。
  • 项目行为:代码(如 crud.go)使用新版本编译和运行,旧版本仅保留在缓存中。

验证
运行后检查 go.mod

cat /home/lizhi/go/src/go-grom/go.mod
# 输出示例:
# require gorm.io/gorm v1.26.0

检查缓存:

ls /home/lizhi/go/pkg/mod/gorm.io/gorm*
# 输出示例:
# /home/lizhi/go/pkg/mod/gorm.io/gorm@v1.25.7
# /home/lizhi/go/pkg/mod/gorm.io/gorm@v1.26.0

运行程序确认兼容性:

cd /home/lizhi/go/src/go-grom/gorm
go run ./crud.go

问题 2:如何删除旧版本?

旧版本(如 v1.25.7)占用缓存空间,我想删除它。

答案
Go 不提供直接命令删除特定版本,但可以通过以下方法清理:

  1. 手动删除特定版本

    • 找到缓存目录:
      go env GOMODCACHE
      # 输出: /home/lizhi/go/pkg/mod
      
    • 删除旧版本:
      rm -rf /home/lizhi/go/pkg/mod/gorm.io/gorm@v1.25.7
      
    • 验证:
      ls /home/lizhi/go/pkg/mod/gorm.io/gorm*
      # 输出: /home/lizhi/go/pkg/mod/gorm.io/gorm@v1.26.0
      
  2. 清理整个缓存

    • 删除所有模块缓存:
      go clean -modcache
      
    • 重新下载当前版本:
      cd /home/lizhi/go/src/go-grom
      go build ./...
      
    • 注意:此方法影响所有模块,谨慎使用。
  3. 使用 go mod tidy

    • 清理 go.sum 中的未使用校验和:
      cd /home/lizhi/go/src/go-grom
      go mod tidy
      
    • 配合手动删除缓存,效果更佳。

推荐:使用方法 1 精确删除旧版本(如 v1.25.7),然后运行 go mod tidy 清理 go.sum

注意事项

  • 兼容性:更新到 v1.26.0 后,检查 GORM 变更日志,确保 crud.go 的 CRUD 操作(如 AutoMigrateCreate)兼容。
  • 其他项目:删除 v1.25.7 可能影响依赖旧版本的其他项目。运行 go build ./... 检查整个模块。
  • 网络:清理缓存后,重新下载需网络支持。设置 GOPROXY
    export GOPROXY=https://goproxy.cn,direct
    

总结

  • 更新依赖go get -u gorm.io/gorm 更新 go.mod 到最新版本(如 v1.26.0),缓存保留旧版本。
  • 删除旧版本:手动删除 /home/lizhi/go/pkg/mod/gorm.io/gorm@v1.25.7,或清理整个缓存(go clean -modcache)。
  • 建议
    • 备份 go.modgo.sum 前更新或清理。
    • 运行 go mod tidy 保持依赖整洁。
    • 使用 go list -m -f '{{.Path}} {{.Version}} {{.Dir}}' gorm.io/gorm 确认版本和路径。

通过这些步骤,我成功更新了依赖并清理了旧版本,项目保持高效运行。

http://www.dtcms.com/wzjs/600691.html

相关文章:

  • 南昌网站设计有限公司婚纱摄影行业网站
  • 泰安建网站网店托管代运营费用多少钱
  • 河北住房和城乡建设厅官方网站锦州网页制作
  • 国外企业查询网站网页设计入门与应用电子书pdf百度网盘
  • 西安学校网站建设公司广州网站优化页面
  • 外贸网站如何做推广是什么无锡网站建设价格
  • 淘宝网站的建设目标是商标怎么查询有没有被注册
  • wordpress架站教程天津手动网站建设调试
  • 互联网网站基础wordpress自定义搜索
  • 余杭区网站建设百度网页设计教程
  • 网站访问量突然增加seo营销网站的设计标准
  • 开发软件网站多少钱网站建设和风险评估
  • 手机 网站 导航菜单 代码wordpress无法搜索插件
  • 网站keywords多少字大连做网站优化哪家好
  • 网站搭建培训佛山网站建设公司怎么选
  • 东莞网站建设设网站内页301重定向怎么做
  • 网站推广策划思路是什么大连金州开发区
  • 北京微网站建设设计服务学校网站建设作用
  • tk后缀网站是什么网站兰州手机网站制作公司
  • 怎么用阿帕奇做网站虚拟主机装2个wordpress
  • 提供哈尔滨网站建设服务WordPress要学多久
  • 网站扫描怎么做做网站怎么赚钱 做网站怎么赚钱
  • 拉米拉云网站建设网站新闻标题标题怎样进行优化
  • 前端网站重构怎么做免手机微网站
  • 昆山门户网站苏州有哪些做网站公司
  • 织梦后台怎么换网站模板网络营销对企业的作用
  • 网站域名备案 更改吗建设工程业绩补录 网站
  • 金融网站建设方案ppt模板下载目前最火的互联网项目
  • 外贸公司英文网站怎么做网站做树状结构有什么作用
  • 网站这么做优化网页制作用什么软件做