[docs] GoDoc badge, TravisCI badge, LICENSE header in README, formatting.
diff --git a/README.md b/README.md
index 1782424..d54357a 100644
--- a/README.md
+++ b/README.md
@@ -1,28 +1,39 @@
# gvt, the go vendoring tool
+[](https://godoc.org/github.com/FiloSottile/gvt) [](https://travis-ci.org/FiloSottile/gvt)
-`gvt` is a simple Go vendoring tool made for the GO15VENDOREXPERIMENT, based on [gb-vendor](https://github.com/constabulary/gb).
+`gvt` is a simple Go vendoring tool made for the
+[GO15VENDOREXPERIMENT](https://docs.google.com/document/d/1Bz5-UB7g2uPBdOx-rw5t9MxJwkfpx90cqG9AFL0JAYo/edit),
+based on [gb-vendor](https://github.com/constabulary/gb).
-It lets you easily and "idiomatically" include external dependencies in your repository to get reproducible builds.
+It lets you easily and "idiomatically" include external dependencies in your repository to get
+reproducible builds.
- * No need to learn a new tool or format!
- You already know how to use `gvt`: just run `gvt fetch` when and like you would run `go get`. You can imagine what `gvt update` and `gvt delete` do.
+ * No need to learn a new tool or format! You already know how to use `gvt`: just run `gvt fetch`
+ when and like you would run `go get`. You can imagine what `gvt update` and `gvt delete` do.
- * No need to change how you build your project!
- `gvt` downloads packages to `./vendor/...`. With `GO15VENDOREXPERIMENT=1` the stock Go compiler will find and use those dependencies automatically (without import path or GOPATH changes).
+ * No need to change how you build your project! `gvt` downloads packages to `./vendor/...`. With
+ `GO15VENDOREXPERIMENT=1` the stock Go compiler will find and use those dependencies
+ automatically (without import path or GOPATH changes).
- * No need to manually chase, copy or cleanup dependencies!
- `gvt` works recursively as you would expect, and lets you update vendored dependencies. It also writes a manifest to `./vendor/manifest` and never touches your system GOPATH. Finally, it strips the VCS metadata so that you can commit the vendored source cleanly.
+ * No need to manually chase, copy or cleanup dependencies! `gvt` works recursively as you would
+ expect, and lets you update vendored dependencies. It also writes a manifest to
+ `./vendor/manifest` and never touches your system GOPATH. Finally, it strips the VCS metadata so
+ that you can commit the vendored source cleanly.
- * No need for your users and occasional contributors to install **or even know about** gvt!
- Packages whose dependencies are vendored with `gvt` are `go build`-able and `go get`-able out of the box by Go 1.5 with `GO15VENDOREXPERIMENT=1` set.
+ * No need for your users and occasional contributors to install **or even know about** gvt!
+ Packages whose dependencies are vendored with `gvt` are `go build`-able and `go get`-able out of
+ the box by Go 1.5 with `GO15VENDOREXPERIMENT=1` set.
-*Note that projects must live within the GOPATH tree in order to be go buildable with the GO15VENDOREXPERIMENT flag.*
+*Note that projects must live within the GOPATH tree in order to be go buildable with the
+GO15VENDOREXPERIMENT flag.*
-If you use and like (or dislike!) `gvt`, it would definitely make my day better if you dropped a line at `gvt -at- filippo.io` :)
-
+If you use and like (or dislike!) `gvt`, it would definitely make my day better if you dropped a
+line at `gvt -at- filippo.io` :)
## Installation
+With a [correctly configured](https://golang.org/doc/code.html#GOPATH) Go installation:
+
```
GO15VENDOREXPERIMENT=1 go get -u github.com/FiloSottile/gvt
```
@@ -32,6 +43,7 @@
You know how to use `go get`? That's how you use `gvt fetch`.
```
+# This will fetch the dependency into the /vendor folder.
$ gvt fetch github.com/fatih/color
2015/09/05 02:38:06 fetching recursive dependency github.com/mattn/go-isatty
2015/09/05 02:38:07 fetching recursive dependency github.com/shiena/ansicolor
@@ -66,28 +78,32 @@
```
-Full usage on [GoDoc ](http://godoc.org/github.com/FiloSottile/gvt)
+A full set of example usage can be found on [GoDoc](https://godoc.org/github.com/FiloSottile/gvt).
## Alternative: not checking in vendored source
-Some developers prefer not to check in the source of the vendored dependencies. In that case you can add lines like these to e.g. your `.gitignore`
+Some developers prefer not to check in the source of the vendored dependencies. In that case you can
+add lines like these to e.g. your `.gitignore`
vendor/**
!vendor/manifest
-When you check out the source again, you can then run `gvt restore` to fetch all the dependencies at the revisions specified in the `vendor/manifest` file.
+When you check out the source again, you can then run `gvt restore` to fetch all the dependencies at
+the revisions specified in the `vendor/manifest` file.
Please consider that this approach has the following consequences:
* the package consumer will need gvt to fetch the dependencies
- * the dependencies will need to remain available from the source repositories: if the original repository goes down or rewrites history, build reproducibility is lost
+ * the dependencies will need to remain available from the source repositories: if the original
+ repository goes down or rewrites history, build reproducibility is lost
* `go get` won't work on your package
## Troubleshooting
### `error: tag 'fetch' not found.`
-This kind of errors happens because you have an alias for `gvt` pointing to `git verify-tag`.
+This error can occur because you have an alias for `gvt` pointing to `git verify-tag` (common if
+using oh-my-zsh).
Run this, or add it to your `~/.bashrc` / `~/.zshrc`:
@@ -99,4 +115,10 @@
Make sure you set `GO15VENDOREXPERIMENT=1`.
-Also note that GO15VENDOREXPERIMENT does not apply when outside the GOPATH tree. That is, your project must be somewhere in a subfolder of `$GOPATH`.
+Also note that GO15VENDOREXPERIMENT does not apply when outside the GOPATH tree. That is, your
+project must be somewhere in a subfolder of `$GOPATH`.
+
+## License
+
+MIT licensed. See the LICENSE file for details.
+