Git command for managing git vendored dependencies
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Brett Langdon e0d1a53103 reorganize 10 years ago
bin reorganize 10 years ago
etc reorganize 10 years ago
man reorganize 10 years ago
LICENSE add license 10 years ago
Makefile reorganize 10 years ago
README.md reorganize 10 years ago

README.md

git-vendor

A work in progress git command for managing golang vendor dependencies.

git-vendor is a wrapper around git-subtree commands for checking out and updating vendored dependencies.

git-vendor provides the following commands:

  • git vendor add <repository> <ref> - add a new vendored dependency in vendor/
  • git vendor list - list all current vendored dependencies, their source, and current vendored ref.
  • git vendor update <dir> <ref> - update a vendored dependency to <ref>.

Installation

Manually:

git clone https://github.com/brettlangdon/git-vendor
cd ./git-vendor
make

One-liner:

curl -sSL https://raw.githubusercontent.com/brettlangdon/git-vendor/master/install.sh | sudo bash /dev/stdin

Example

$ # Checkout github.com/brettlangdon/forge@v0.1.6 under vendor/github.com/brettlangdon/forge
$ git vendor add https://github.com/brettlangdon/forge v0.1.6
git fetch https://github.com/brettlangdon/forge v0.1.6
warning: no common commits
remote: Counting objects: 405, done.
remote: Total 405 (delta 0), reused 0 (delta 0), pack-reused 404
Receiving objects: 100% (405/405), 68.31 KiB | 0 bytes/s, done.
Resolving deltas: 100% (227/227), done.
From https://github.com/brettlangdon/forge
 * tag               v0.1.6     -> FETCH_HEAD
Added dir 'vendor/github.com/brettlangdon/forge'
$ # List current vendored dependencies
$ git vendor list
vendor/github.com/brettlangdon/forge
	commit:	a7afbba3821d74c5b722c9195b954effa3d7420f
	dir:	vendor/github.com/brettlangdon/forge
	ref:	v0.1.6
	repo:	https://github.com/brettlangdon/forge

$ # Update existing dependency to a newer version
$ git vendor update vendor/github.com/brettlangdon/forge v0.1.7
warning: no common commits
remote: Counting objects: 411, done.
remote: Total 411 (delta 0), reused 0 (delta 0), pack-reused 410
Receiving objects: 100% (411/411), 68.91 KiB | 0 bytes/s, done.
Resolving deltas: 100% (231/231), done.
From https://github.com/brettlangdon/forge
 * tag               v0.1.7     -> FETCH_HEAD
Merge made by the 'recursive' strategy.
 vendor/github.com/brettlangdon/forge/forge_test.go | 2 ++
 vendor/github.com/brettlangdon/forge/scanner.go    | 4 ++++
 vendor/github.com/brettlangdon/forge/test.cfg      | 1 +
 3 files changed, 7 insertions(+)
$ # List current vendored dependencies
$ git vendor list
vendor/github.com/brettlangdon/forge
	commit:	fcaa3c0cf3792fe3ad724c43d6db75f06fc5ecd5
	dir:	vendor/github.com/brettlangdon/forge
	ref:	v0.1.7
	repo:	https://github.com/brettlangdon/forge