【protoc】回滚到上一版本的方法

前几天因为一些原因升级了一下本地的protoc-gen-go的版本,结果今天在项目中,一直使用的是新版本的protoc,编译出来的和项目的pb.go不统一。

最开始以为是go.mod文件里指定的版本问题。
go.mod

module test
go 1.12
require (
    ...
    github.com/golang/protobuf v1.3.5
        ...
)

经常使用protoc编译之后,go.mod就自动更新成v1.4.2的版本了。
试着把本地的GOPATH/pkg下面自动下下来的1.4.2的包删掉,然后把go.mod强制改成v1.3.5,还是不可以。

最后上protobuf的github主页,简单看了一下安装说明。一条信息提示了我:


protobuf安装说明

按照主页说明,在本地新建一个.sh文件,然后运行.sh文件,成功回滚到了指定的版本,问题顺利解决。

GIT_TAG="v1.3.5" # change as needed
go get -d -u github.com/golang/protobuf/protoc-gen-go
git -C "$(go env GOPATH)"/src/github.com/golang/protobuf checkout $GIT_TAG
go install github.com/golang/protobuf/protoc-gen-go
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Go Module是Go会在1.12中正式推出的包管理机制。 Go mod 简介 Golang一直存在一个被人诟病...
    会飞的鲶鱼阅读 48,305评论 1 14
  • 备注:本猿翻译水平有限,请各位看客见谅 翻译内容: go1.11 版本中 go help modules文档内容 ...
    星云数联阅读 2,652评论 0 1
  • 为什么现在的孩子不像我们那个年代那么好带,那么好管教,那么听话呢。可能你会说,是因为一些单亲家庭啊,现在离婚率那么...
    爱儿岚阅读 244评论 0 0
  • 所谓的人性化管理,就是通过管理手段激发人的内心自觉,进而达到自我成长的目的。而人性化管理,不但要我们充满人情味的接...
    糖豆角阅读 620评论 0 0
  • 不知不觉,青椒计划的学习已经三个多月了。从开始的懵懵懂懂,到现在的驾熟就轻,自己不断成长,学生也随着受益,课堂效率...
    临朐五井小学张蓓蓓阅读 517评论 0 0

友情链接更多精彩内容