指令
Go module 指令
Init and create go.mod file
go mod init github.com/xiaokatech/go-lab
运行代码
go run # 适合于小的片段代码
go help run
go build # build 二进制文件,更接近真实使用场景
go build && ./go-lab
Add dependencies
go get github.com/wagslane/go-tinytime
go mod vendor # 创建依赖清单副本, 获得依赖包的本地文件副本
Clean and fix packages
go mod tidy
Compiles and installs the program locally
go install
常用指令
- 
go build- 用途:编译 Go 程序。
- 示例:go build main.go- 编译名为main.go的文件。
 
- 
go run- 用途:编译并运行 Go 程序。
- 示例:go run main.go- 编译并运行main.go。
 
- 
go test- 用途:运行 Go 程序中的测试。
- 示例:go test- 在当前目录下运行所有测试。
 
- 
go get- 用途:下载并安装包及其依赖。
- 示例:go get github.com/gorilla/mux- 安装gorilla/mux包。
 
- 
go mod init- 用途:初始化一个新的模块,创建go.mod文件。
- 示例:go mod init mymodule- 创建一个新模块名为mymodule。
 
- 用途:初始化一个新的模块,创建
- 
go mod tidy- 用途:添加缺少的模块和移除不用的模块。
- 示例:go mod tidy- 清理模块。
 
- 
go fmt- 用途:格式化 Go 源代码。
- 示例:go fmt ./...- 格式化当前目录及其子目录中的所有 Go 文件。
 
- 
go vet- 用途:检查 Go 源代码中的常见错误。
- 示例:go vet ./...- 在当前目录及其子目录中检查代码。
 
- 
go doc- 用途:显示包或符号的文档。
- 示例:go doc fmt- 显示fmt包的文档。
 
- 
go env- 用途:打印 Go 环境信息。
- 示例:go env- 打印当前 Go 环境的信息。
 
Questions
- Doesn go runbuild a production executable?- non
 
- Which can go runaccept as arguments?- Both (packge names and file names)
 
- What was created after runing go build?- A executable file name "go module name"
 
- What does go installdo?- Compiles and installs the program locally
 
- Code must be compiled with go buildbefore runninggo install- False
 
- What was the output from go buildin the library package- The compiled package is silently saved to the local build cache
 
- Why is the function Reverse()instead ofreverse()?- Lowercase names aren't exported for external use
 
- Does a packge in a folder named dateparserneed to also be calleddateparser- No, but it should by convention