go run
运行一个 .go 命令源码文件
| 标记 | 描述 | 示例 |
|---|---|---|
| -a | 强制编译相关代码,不论它们的编译结果是否已是最新的 | go run -a main.go |
| -n | 打印编译过程中所需执行的命令,但不真正执行它们 | go run -n main.go |
| -p n | 并行编译,其中 n 为并行的数量 | go run -p 8 main.go |
| -v | 列出被编译的代码包的名称 | go run -v main.go |
| -work | 显示编译时创建的临时工作目录的路径,并且不删除它 | go run -work main.go |
| -x | 打印编译过程中所需运行的命令,并执行 | go run -x main.go |
go build
用于编译源码文件或代码包。当编译非命令源码文件不会产生任何结果文件,编译命令源码文件会在该命令的执行目录中生成一个可执行文件。
执行该命令且不追加任何参数时,它会试图把当前目录作为代码包并编译。执行该命令且以代码包的导入路径作为参数时,该代码包及其依赖会被编译。执行该命令且以诺干源码文件作为参数时,只有这些文件会被编译
| 标记 | 描述 | 示例 |
|---|---|---|
| -a | 强制编译相关代码,不论它们的编译结果是否已是最新的 | go build -a main.go |
| -n | 打印编译过程中所需执行的命令,但不真正执行它们 | go build -n main.go |
| -p n | 并行编译,其中 n 为并行的数量 | go build -p 8 main.go |
| -v | 列出被编译的代码包的名称 | go build -v main.go |
| -work | 显示编译时创建的临时工作目录的路径,并且不删除它 | go build -work main.go |
| -x | 打印编译过程中所需运行的命令,并执行 | go build -x main.go |
go install
用于编译并安装代码包或源码文件。安装代码包会在当前工作区的 pkg/<平台相关目录> 下生成归档文件,安装命令源码文件会在当前工作区的 bin 目录或 $GOBIN 目录下生成可执行文件。
执行该命令且不追加任何参数时,它会试图把当前目录作为代码包并安装。执行该命令且以代码包的导入路径作为参数时,该代码包及其依赖会被安装。执行该命令且以命令源码文件及相关库源码文件作为参数时,只有这些文件会被编译并安装。
go get
用于从远程代码仓库上下载并安装代码包。受支持的代码版本控制系统有:Git、Mercurial、SVN、Bazaar。指定的代码包会被下载到 $GOPATH 中包含的第一个工作区的 src 目录中。
| 标记 | 描述 | 示例 |
|---|---|---|
| -d | 只执行下载动作,而不执行安装动作 | go get -d github.com/go-errors/errors |
| -fix | 在下载代码包后根据本地 go 版本执行代码包修正动作,而后再进行编译和安装 | go get -fix github.com/go-errors/errors |
| -u | 利用网络来更新已有的代码包及其依赖 | go get -u github.com/go-errors/errors |