go get
download and install packages and dependencies
该命令可以理解为两个操作 git clone + go install , 执行会将远程代码clone 到【$GOPATH/src】 目录中
-u
标志指示获取使用网络来更新命名软件包及其依赖关系的信息。默认情况下,get使用网络来检查丢失的软件包,但不使用它来查找对现有软件包的更新。
go build
go build main.go
# 编译程序 go build -o ../bin main.go
#编译程序到指定位置
- gcflags 传递每个GO工具编译调用的参数
- ldflags 传递每个GO工具链接调用的参数
go install
执行 go install 命令会完成类似 go build 的功能 ,但go install 命令执行生成的可执行文件是在【$GOPATH/bin】目录中
go test
Q: 如何检测代码中的变量竞争?
竞争检查器检查: go test -run=TestConcurrent -race -v gopl.io/ch9/memo1
Q: go test 出现缓存 不想要缓存用什么参数?
go test -run=TestConcurrent -race -v gopl.io/ch9/memo1 -count 1