【GO】go mod自定义包
2023-01-03 本文已影响0人
24c41111e47b
自定义go module
1.创建一个仓库,仓库地址 https://gitee.com/doitp/snail
2.创建一个Go项目
2.1 go项目推送到远端仓库
2.2 go项目下生成go.mod
执行如下命令
go mod init gitee.com/doitp/snail
2.3 开发代码/迭代代码
2.4 本地依赖,测试包功能
假设项目结构如下, appdemo
是某个项目
├── appdemo
│ ├── go.mod
│ └── main.go
└── snail
├── go.mod
└── mypackage.go
在appdemo
项目的go.mod
中添加如下内容,完成本地依赖
require (
"snail" v0.0.0
)
replace (
"snail" => "../snail"
)
或者
require (
gitee.com/doitp/snail v0.0.0
)
replace gitee.com/doitp/snail => ./dev/snail
2.5 推送到私有代码仓库
2.6 远程依赖:修改拉取私有代码仓库的方式为SSH,如何配置 参考如下方式:
方式一: 直接用命令进行配置,将Https转为SSH拉取
git config --global url.ssh://git@gitee.com/.insteadOf https://gitee.com
方式二:手动配置, 打开 ~/.gitconfig
, 添加如下内容:
[url "ssh://git@gitee.com/"]
insteadOf = https://gitee.com
网上资料说还要按照如下方式配置私有库地址的环境变量,经测试,不配置也可以
export GOPRIVATE="gitee.com"
export GOSUMDB=off
包内的依赖关系
##############################################
| axe |
##############################################
| config | db | logger | middleware | proxy |
##############################################
| utils |
##############################################
上层依赖下层,同层尽可能不依赖