大部分情况下Golang拉取依赖一条命令就可以搞定,例如:
go get github.com/emersion/go-imap/v2
已发布版本
但是有时候仓库作者更新比较频繁,刚好又有发布了Pre
版本(非正式版本),此时通过上面的命令是拉不到最新代码的,于是就需要拉取指定版本的代码。
比如现在:
我需要拉取的版本号是:v2.0.0-alpha.6
,那么上面的命令就应该调整为:
go get github.com/emersion/go-imap/v2@v2.0.0-alpha.6
未发布版本
还有一种情况,作者根本还没发布,有时候只是单纯提交了一个commit
,刚好是我需要的特性,于是命令就要修改为:
# ed0b4a3e3c1d6c26efc5e9a3294cf0d7bc9cbb3c 是commit log hash
go get github.com/emersion/go-imap/v2@ed0b4a3e3c1d6c26efc5e9a3294cf0d7bc9cbb3c