Documentation ¶
Overview ¶
gvt, a simple go vendoring tool based on gb-vendor.
Usage:
gvt command [arguments]
The commands are:
fetch fetch a remote dependency restore restore dependencies from manifest update update a local dependency list list dependencies one per line delete delete a local dependency
Use "gvt help [command]" for more information about a command.
Fetch a remote dependency ¶
Usage:
gvt fetch [-branch branch] [-revision rev | -tag tag] [-precaire] [-no-recurse] [-t|-a] importpath
fetch vendors an upstream import path.
Recursive dependencies are fetched (at their master/tip/HEAD revision), unless they or their parent package are already present.
If a subpackage of a dependency being fetched is already present, it will be deleted.
The import path may include a url scheme. This may be useful when fetching dependencies from private repositories that cannot be probed.
Flags:
-t fetch also _test.go files and testdata. -a fetch all files and subfolders, ignoring ONLY .git, .hg and .bzr. -branch branch fetch from the named branch. Will also be used by gvt update. If not supplied the default upstream branch will be used. -no-recurse do not fetch recursively. -tag tag fetch the specified tag. -revision rev fetch the specific revision from the branch or repository. If no revision supplied, the latest available will be fetched. -precaire allow the use of insecure protocols.
Restore dependencies from manifest ¶
Usage:
gvt restore [-precaire] [-connections N]
restore fetches the dependencies listed in the manifest.
It's meant for workflows that don't include checking in to VCS the vendored source, for example if .gitignore includes lines like
vendor/** !vendor/manifest
Note that such a setup requires "gvt restore" to build the source, relies on the availability of the dependencies repositories and breaks "go get".
Flags:
-precaire allow the use of insecure protocols. -connections count of parallel download connections.
Update a local dependency ¶
Usage:
gvt update [ -all | importpath ]
update replaces the source with the latest available from the head of the fetched branch.
Updating from one copy of a dependency to another is ONLY possible when the dependency was fetched by branch, without using -tag or -revision. It will be updated to the HEAD of that branch, switching branches is not supported.
To update across branches, or from one tag/revision to another, you must first use delete to remove the dependency, then fetch [ -tag | -revision | -branch ] to replace it.
Flags:
-all update all dependencies in the manifest. -precaire allow the use of insecure protocols.
List dependencies one per line ¶
Usage:
gvt list [-f format]
list formats the contents of the manifest file.
Flags:
-f controls the template used for printing each manifest entry. If not supplied the default value is "{{.Importpath}}\t{{.Repository}}{{.Path}}\t{{.Branch}}\t{{.Revision}}"
Delete a local dependency ¶
Usage:
gvt delete [-all] importpath
delete removes a dependency from the vendor directory and the manifest
Flags:
-all remove all dependencies