版本命名定范
版本号格式为v<major>.<minor>.<patch>
,如v1.2.3
。当有不兼容的改变时,需要增加major版本号,如v2.1.0
。
Go module规定,如果major版本号大于1,则major版本号需要显式地标记在module名字中,如module github.com/my/mod/v2
。这样做的好处是Go module 会把module github.com/my/mod/v2
和 module github.com/my/mod
视做两个module,他们甚至可以被同时引用
go get
go get借助代码管理工具(例如:git,svn,hg等等)从远程拉取代码和依赖包,并且自动完成编译和安装。
可以这么理解,go get获取代码到本地的时候编译器会通览一遍代码,得出需要哪些依赖包。如果本地没有这些依赖包,会从远程拉取这些依赖包到本地。然后完成编译。
go get 命令目前支持的有BitBucket、GitHub、Google Code 和 Launchpad。 go 工具会自动根据不同的域名调用不同的代码管理工具。
-d 只下载不安装
-f 只有在你包含了 -u 参数的时候才有效,不让 -u