Go command
The go command is Go’s standard command-line interface for compiling, building, testing, formatting, analyzing, and managing Go programs and dependencies.
Go in Practice, Second Edition
The go tool is Go's command-line tool for compiling and performing other standard development tasks.
- How it is used
- Provides one command-line toolchain for building packages and handling routine development tasks.
- How deep it goes
- Shows task-level commands, test output, coverage, and cross-compilation settings; does not descend into compiler internals.
- Examples
- Uses a failing name-reversal test, a coverage report, and a Windows 386 build command.
- What you can do after
- Operate/configure it to test and measure Go code, manage dependencies, format code, and build for another platform.
Read how Go in Practice, Second Edition explains go command →
Learn Go with Pocket-Sized Projects
Go tooling is the integrated suite of Go development tools for formatting, linting, testing, benchmarking, building, and execution.
- How it is used
- Coordinates executable production, unit testing, benchmarking, and fuzzing during Go development.
- How deep it goes
- Explains the toolchain’s roles and testing capabilities but stops short of command syntax or implementation internals.
- Examples
- Uses executable builds, unit tests, algorithm benchmarks, commit-level performance checks, and randomized fuzz inputs.
- What you can do after
- Evaluate Go implementations with tests, compare performance with the built-in bench command, and probe behavior with fuzzing.
Read how Learn Go with Pocket-Sized Projects explains go command →
Related concepts
- trajectoryused by · A trajectory is an ordered sequence of states, actions, events, or operations that records or describes progression through successive steps or over time.
- go.mod fileconfigured by · A go.mod file is a Go module manifest that declares the module path, Go language version, and required dependencies.
- Gopart of · Go is a statically typed, compiled, garbage-collected programming language with built-in support for concurrency.
- compileruses · A compiler is software that translates source code into executable code or another representation, while analyzing it according to the source language’s rules.
- packageuses · A package is a programming-language namespace and organizational unit that groups related code and may define import, compilation, or access boundaries.
- githas part · Git is a distributed version-control system that records changes to files and supports managing project history and collaboration across repositories.
These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.

