vendor-go

module
v0.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 7, 2024 License: MIT

README

The Vending CLI

This tool allows users to install, manage and update dependencies. See the example to see how it works.

Features

  • Local caching of repositories: speeds up the installation and update commands since a full clone is not required every time.

  • Highly customizable tool: develop your custom presets, adapt, and standardize the vendoring process to your needs.

  • Parallelized vendoring process: dependencies are vendored in parallel during install or update operations, this further enhances speed due to the I/O required to clone or fetch the upstreams.

Usage

  • vending init initializes a .vendor.yml file in the working directory
  • vending add adds a dependency in the .vendor.yml file
  • vending install downloads and vendors the vendor the specified dependencies
    • The first time this command is executed, it will generate a .vendor-lock.yml which keeps track of the locked reference that has been vendored (eg. a specific commit)
    • Once the lock file already exists, it vendors dependencies at the specified locked reference.
  • vending update ignores the vendor-lock.yml and fetches newest dependencies according to the refname that is specified in the .vendor.yml file

Directories

Path Synopsis
cmd
internal
git
pkg
cmd
Package cmd provides commands for running the CLI.
Package cmd provides commands for running the CLI.
log
Package log centralises the logging infrastructure of the tool.
Package log centralises the logging infrastructure of the tool.
vending
Package vending provides the public primitives that are needed for working with the tool.
Package vending provides the public primitives that are needed for working with the tool.
vendor Module

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL