Improve README.md
diff --git a/README.md b/README.md index 01bdc84..b17f3e5 100644 --- a/README.md +++ b/README.md
@@ -1,9 +1,12 @@ # gvt, the go vendoring tool `gvt` is a simple Go vendoring tool made for the GO15VENDOREXPERIMENT. + It's based entirely on [gb-vendor](https://github.com/constabulary/gb). -You run `gvt fetch` when you would run `go get`. `gvt` downloads packages to `./vendor/...`. With `GO15VENDOREXPERIMENT=1` set the compiler will find and use those dependencies without import path rewriting. `gvt` works recursively as you would expect, and lets you update vendored dependencies. It also writes a manifest to `./vendor/manifest`. +You run `gvt fetch` when you would run `go get`. `gvt` downloads packages to `./vendor/...`. With `GO15VENDOREXPERIMENT=1` the compiler will find and use those dependencies without import path rewriting. + +`gvt` works recursively as you would expect, and lets you update vendored dependencies. It also writes a manifest to `./vendor/manifest`. Finally, it strips the VCS metadata so that you can commit the vendored source cleanly. Packages whose dependencies are vendored with `gvt` are `go build`-able and `go get`-able by Go 1.5 with `GO15VENDOREXPERIMENT=1` set. @@ -15,6 +18,8 @@ ## Usage +You know how to use `go get`? That's how you use `gvt fetch`. + ``` $ gvt fetch github.com/fatih/color 2015/09/05 02:38:06 fetching recursive dependency github.com/mattn/go-isatty @@ -42,13 +47,12 @@ } $ export GO15VENDOREXPERIMENT=1 - $ go build . - $ ./hello Hello, world! -$ gvt update github.com/fatih/color +$ git add main.go vendor/ && git commit + ``` Full usage on [GoDoc ](http://godoc.org/github.com/FiloSottile/gvt) @@ -60,5 +64,6 @@ * no GO15VENDOREXPERIMENT support: old tools are based on import path rewriting or GOPATH overrides * requirement to run on clients: some require the user to install the tool and run it after cloning, which breaks `go get` * **no real fetching support**: tools like Godep just copy packages from your GOPATH, instead of pulling it from the Internet - * prominent metadata files: there's no need for the manifest to be in your repository root, or in its own empty folder + * prominent metadata files: there's no need for the manifest to be in your repository root, or in its own empty folder, or to be manually edited + * complex feature set: many are project management tools with included vendoring features * different build stack: gb-vendor is awesome but it requires you to build your project with gb