go 开发总结

易先讯 / 2023-08-31 / 原文

一、启动报错修复

1、go mod tidy报错fatal: unable to connect to codehub-dg-y.huawei.com:

http://3ms.huawei.com/hi/group/3225441/wiki_7286777.html

 

2、szv-open.codehub.huawei.com[0: 7.222.222.207]: errno=Unknown error

http://3ms.huawei.com/km/blogs/details/13810307

 

3、git(git mm)工具 错误之407错误 Received HTTP code 407 from proxy after CONNECT

http://3ms.huawei.com/km/blogs/details/12597125

 

4、git clone报错:unable to access 'https://szv-y.codehub.huawei.com/xxx/': Received HTTP code 504 from proxy after CONNECT

http://3ms.huawei.com/km/blogs/details/11669543

 

5、go编译过程中遇到的问题

verifying github.com/google/martian/v3@v3.0.0: checksum mismatch downloaded: h1:+rpPnUc12J3godXW5lHIevv9/7Z8RjnTR3D0pyFtRPc= go.sum: h1:pMen7vLs8nvgEYhywH3KDWJIJTeEr2ULsVWHWYHQyBs=

http://3ms.huawei.com/km/blogs/details/12777199

 

6、Go mod下载问题总结

http://3ms.huawei.com/km/blogs/details/13875235

 

7、Go Modules - checksum mismatch 错误解决

http://3ms.huawei.com/km/blogs/details/12409501

 

二、go env 配置

set GOPROXY=http://rnd-szv-repo1.huawei.com:3000,https://cmc.centralrepo.rnd.huawei.com/go,http://cmc-cd-mirror.rnd.huawei.com/goproxy,direct
set GO111MODULE=on
set GONOSUMDB=*
set GOPRIVATE=*.huawei.com
set GOINSECURE=*.huawei.com
set GONOPROXY=*.huawei.com
 
更改配置
go env -w GOPROXY=http://rnd-szv-repo1.huawei.com:3000,https://cmc.centralrepo.rnd.huawei.com/go,http://cmc-cd-mirror.rnd.huawei.com/goproxy,direct

 

三、go程序部署到linux上运行的实现方法

https://www.jb51.net/article/245502.htm

1、CGO_ENABLED=0 GOARCH=amd64 GOOS=linux go build -o target/updateCr test/myTest.go

2、项目中test/myTest.go在target目录下自动生成二进制文件updateCr,传送到对应的linux环境上去

3、chmod 777 updateCr 授权

4、./updateCr 进行执行

 

四、Go 面向包的设计和架构分层

https://github.com/danceyoung/paper-code/blob/master/package-oriented-design/packageorienteddesign.md

 

Go 项目目录结构(开发目录、测试目录、部署目录、项目管理目录 makefile、scripts、build、tools、文档目录、makefile规则)

https://blog.csdn.net/wohu1104/article/details/123209272

 

五、Golang 单元测试指引(如何mock)

https://zhuanlan.zhihu.com/p/267341653