LinuxCommandLibrary

go-clean

Remove object files and cached files.

TLDR

Print the remove commands instead of actually removing anything

$ go clean -n
copy


Delete the build cache
$ go clean -cache
copy


Delete all cached test results
$ go clean -testcache
copy


Delete the module cache
$ go clean -modcache
copy

SYNOPSIS

go clean [ -i ] [ -r ] [ -n ] [ -x ] [ packages ]

DESCRIPTION

Clean removes object files from package source directories. The go command builds most objects in a temporary directory, so go clean is mainly concerned with object files left by other tools or by manual invocations of go build.

Specifically, clean removes the following files from each of the source directories corresponding to the import paths:

_obj/

old object directory, left from Makefiles

_test/

old test directory, left from Makefiles

_testmain.go

old gotest file, left from Makefiles

test.out

old test log, left from Makefiles

build.out

old test log, left from Makefiles

*.[568ao]

object files, left from Makefiles

DIR(.exe)

from go build

DIR.test(.exe)

from go test -c

MAINFILE(.exe)

from go build MAINFILE.go

In the list, DIR represents the final path element of the directory, and MAINFILE is the base name of any Go source file in the directory that is not included when building the package.

OPTIONS

-i

The -i flag causes clean to remove the corresponding installed archive or binary (what 'go install' would create).

-n

The -n flag causes clean to print the remove commands it would execute, but not run them.

-r

The -r flag causes clean to be applied recursively to all the dependencies of the packages named by the import paths.

-x

The -x flag causes clean to print remove commands as it executes them.

For more about specifying packages, see go-packages(7).

AUTHOR

This manual page was written by Michael Stapelberg <stapelberg@debian.org>, for the Debian project (and may be used by others).

Copied to clipboard