The rest of this chapter concerns the
go tool, which is used
for downloading, querying, formatting, building, testing, and
installing packages of Go code.
go tool combines the features of a diverse set of tools
into one command set.
It is a package manager (analogous to
rpm) that answers
queries about its inventory of packages, computes their dependencies,
and downloads them from remote version-control systems.
It is a build system that computes file dependencies and invokes
compilers, assemblers, and linkers, although it is intentionally less
complete than the standard Unix
And it is a test driver, as we will see in Chapter 11.
Its command-line interface uses the “Swiss army knife” style, with over