This was from the time when we tried to have hub build even if it wasn't
checkout out within a local GOPATH. This change assumes a working Go
environment.
The only thing that has substansively changed is that Go 1.8 handles
redirect logic more safely than previous versions. This means we can
drop our special handling to avoid following redirects to other
domains. We were only doing that to protect against the possibility
of leaking auth headers. With Go 1.8, the auth headers are not
forwarded when following a redirect to another domain, so we don't
need our special handling any more.
As long as people are attempting to build with the Makefile, the new
check_go_version script should cause the build to stop if our
collaborators aren't using at least version 1.8 of go.
Man pages should be the canonical source of hub documentation. People
should use `man help hub` instead of viewing the README, which might not
even correspond to the version they have installed.
This ends the confusing man page build system in which parts of the
README are injected into `hub.1.ronn` source file, deletes the Rakefile
and removes rake from gem bundle.
The examples are deleted because they are now inlined with individual
command documentation. So did the documentation for all hub commands get
deleted from main man page in favor of individual man pages.
However, this makes main man page have absolutely no listing of which
commands are available. This will get addressed as we go forward.
Old `script/bootstrap` & `script/build` were unfriendly to Go newbies
because they require the user having GOPATH set in their environment,
and either `godep` installed or `hg` to be able to fetch godep.
However, since dependencies are vendored, we don't have any real build
dependencies except Go itself.
- `script/bootstrap` now checks Go and installs Ruby test bundle
- `script/build` skips compiling if binary is up to date
- `script/test` runs both Go and Cucumber test suites