go 提供了一套强大好用的命令系统golang
go build 编译包和依赖项 go clean 删除目标文件 go env 打印Go环境信息 go fix 在包上运行go tool修复,用来修复老版本到新版本的问题 go fmt 在包源上运行gofmt go generate 经过处理源生成Go文件 go get 下载并安装包和依赖项 go install 编译和安装包和依赖项 go list 列出包 go run 编译并运行go程序 go test 测试包,运行以 _test.go结尾的文件 go tool 运行指定的go工具 go version 打印go版本 go vet 在包上运行工具go vet,它能够在编译阶段和运行阶段发现bug
详细的官网地址为:中文https://go-zh.org/cmd/go/ 英文:https://golang.org/doc/cmd工具
介绍几个经常使用的:开发工具
go build [-o output][-i] [build flags][packages]
测试
这个命令主要用于测试编译。在包的编译过程当中,如有必要,会同时编译与之相关联的包。ui
这个命令是用来移除当前源码包里面编译生成的文件。这些文件包括操作系统
_obj/ 旧的 object 目录,由 Makefiles 遗留 _test/ 旧的 test 目录,由 Makefiles 遗留 _testmain.go 旧的 gotest 文件,由 Makefiles 遗留 test.out 旧的 test 记录,由 Makefiles 遗留 build.out 旧的 test 记录,由 Makefiles 遗留 *.[568ao] object 文件,由 Makefiles 遗留 DIR(.exe) 由 go build 产生 DIR.test(.exe) 由 go test -c 产生 MAINFILE(.exe) 由 go build MAINFILE.go 产生
通常在提交版本控制前,删除一些编译生成的文件版本控制
格式化代码。go fmt <文件名>.go
通常开发工具都自带code
使用 go fmt 命令,更多时候是用 gofmt,并且须要参数-w,不然格式化结果不会写入文件 。gofmt -w src
,能够格式化整个项目对象
动态获取远程代码包 ,这个命令在内部实际上分红了两步操做:开发
第一步是下载源码包,第二步是执行 go install。 go 工具会自动根据不一样的域名调用不一样的源码工具 ,因此要正常使用确保安装了合适的源码管理工具。
生成可执行文件。这个命令在内部实际上分红了两步操做:
第一步是生成结果文件(可执行文件或者.a 包),第二步会把编译好的结果移到$GOPATH/pkg 或者$GOPATH/bin
执行这个命令,会自动读取源码目录下面名为*_test.go 的文件,生成并运行测试用的可执行文件。
执行godoc 能够查看bao、文件、以及方法的源码文档。好比:go doc net/http
godoc -src fmt Printf
等等。最好用的仍是能够在本地搭建文档服务godoc -http=:端口号
而后访问localhost:端口号。若是你的pkg下有本身生成的文件,也会在文档列出来。
很实用,编译并直接运行。好比 go run main.go
其余命令或者详细参数,用到的时候能够去查官方文档。