dep's behavior can be modified by some environment variables:
Environment variables are passed through to subcommands, and therefore can be used to affect vcs (e.g.
If set to a duration (e.g.
24h), it will enable caching of metadata from source repositories:
- Lists of published versions
- The contents of a project's
Gopkg.tomlfile, at a particular version
- A project's tree of packages and imports, at a particular version
A duration must be set to enable caching. (In future versions of dep, it will be on by default). The duration is used as a TTL, but only for mutable information, like version lists. Information associated with an immutable VCS revision (packages and imports;
Gopkg.toml declarations) is cached indefinitely.
The cache lives in
$DEPCACHEDIR/bolt-v1.db, where the version number is an internal number associated with a particular data schema dep uses.
The file can be removed safely; the database will be automatically rebuilt as needed.
Allows the user to specify a custom directory for dep's local cache of pristine VCS source repositories. Defaults to
This is primarily useful if you're not using the standard
go toolchain as a compiler (for example, with Bazel), as there otherwise isn't much use to operating outside of GOPATH.
By default, dep creates an
sm.lock file at
$DEPCACHEDIR/sm.lock in order to prevent multiple dep processes from interacting with the local cache simultaneously. Setting this variable will bypass that protection; no file will be created. This can be useful on certain filesystems; VirtualBox shares in particular are known to misbehave.