cmd/go/internal/modfetch/codehost: add general vcs support

Add support for code fetch from bzr, fossil, hg, svn repositories.
Table-driven in a similar manner to old go get, but a different
operation set, so different code.

The git support remains a separate, special case, making use of
git-specific optimizations that wouldn't fit into the general
framework being introduced for the other version control systems.

Now vgo can handle launchpad.net/gocheck and bitbucket.org/ww/goautoneg.

Support for Subversion zip files remains a TODO (#26092).

Change-Id: I6f296a7f6588df08d48b39b98fe255d9b07c76d0
Reviewed-on: https://go-review.googlesource.com/120998
Reviewed-by: Bryan C. Mills <bcmills@google.com>
10 files changed
tree: 1e58cd966ded38c7606b2dc1908417434cc60d29
  1. vendor/
  2. AUTHORS
  3. codereview.cfg
  4. CONTRIBUTING.md
  5. CONTRIBUTORS
  6. LICENSE
  7. main.go
  8. PATENTS
  9. README.md
README.md

Versioned Go Prototype (vgo)

This repository holds a prototype of what the go command might look like with integrated support for package versioning.

See research.swtch.com/vgo for documents about the design.

Download/Install

Use go get -u golang.org/x/vgo.

You can also manually git clone the repository to $GOPATH/src/golang.org/x/vgo.

Report Issues / Send Patches

See CONTRIBUTING.md.

This is still a very early prototype. You are likely to run into bugs. Please file bugs in the main Go issue tracker, golang.org/issue, and put the prefix x/vgo: in the issue title.

Thank you.