Golang安全开发
一、安装Go&编译器基础使用
1. 安装包地址
https://golang.google.cn
2. 添加环境变量
windows
直接点击msi安装即可
Linux
tar -zxvf xxx.xxx.xxx.tar.gz
mv -r go /use/local/go
vim /etc/profile
export PATH=$PATH:/usr/local/go/bin
source /etc/profile
3. 编译器
Goland
下载地址:
https://www.jetbrains.com/go/download/download-thanks.html
4. 一些编译器技巧设置
软换行
使用ctrl+滚轮更改字号
5. 插件
Goland插件
Material Theme UI
Chinese
Rainbow Brackets
二、Go命令
1. 编辑器命令
go build
go run
go fmt
go bug
go test
go build
作用:编译Go源代码文件或包
示例:
go build main.go
会生成一个可执行文件main(在Windows上是main.exe)
go run
作用:编译并执行Go源代码文件
示例:
go run main.go
会编译并立刻运行main.go文件
go fmt
作用:格式化Go源代码文件,使其符合标准的代码风格
go bug
作用:打开Go的问题跟踪系统,报告或查看Go的问题
go test
作用:用于运行Go的测试文件
示例:go test 会运行当前包中所有测试文件(以_test.go结尾的文件)
三、Module命令
go mod init
作用:初始化一个新的模块,创建go.mod文件
示例
go mod init example.com/mymodule
会创建一个新的go.mod 文件,并将模块路径设置为example.com/mymodule
go mod download:
作⽤:下载并缓存依赖项。
示例:go mod download 会下载 go.mod ⽂件中列出的所有依赖项。
go mod tidy:
作⽤:添加缺失的模块并移除未使⽤的模块。
示例:go mod tidy 会更新 go.mod 和 go.sum ⽂件,确保它们是最新的。
go mod vendor:
作⽤:将依赖项复制到 vendor ⽬录。
示例:go mod vendor 会将所有依赖项复制到 vendor ⽬录,以便在没有⽹络连接时也能构建项
⽬。
go.mod
定义模块的路径及其依赖项。
go.sum
记录模块依赖项的校验和,⽤于验证依赖项的完整性。
go command [参数] go 命令 [参数]
go build 编译包和依赖包
go clean 移除对象和缓存⽂件
go doc 显示包的⽂档
go env 打印go的环境变量信息
go bug 报告bug
go fix 更新包使⽤新的api
go fmt 格式规范化代码
go generate 通过处理资源⽣成go⽂件
go get 下载并安装包及其依赖
go install 编译和安装包及其依赖
go list 列出所有包
go run 编译和运⾏go程序
go test 测试
go tool 运⾏给定的go⼯具
go version 显示go当前版本
go vet 发现代码中可能的错误
启用Go Modules功能
go env -w G0111MODULE=on
配置GOPROXY环境变量,其中-w表示写操作
# 1. 七⽜ CDN
go env -w GOPROXY=https://goproxy.cn,direct# 2. 阿⾥云
go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/,direct# 3. 官⽅
go env -w GOPROXY=https://goproxy.io,direct