# kardianos/govendor

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/kardianos-govendor).**

_How this analysis was created: the description and tags below were written by an AI model that read this project's README and public documentation pages; stars, license and language come straight from the GitHub API. The model does not read the source code._

4,895 stars · 386 forks · Go · BSD-3-Clause · archived

## Links

- GitHub: https://github.com/kardianos/govendor
- Homepage: https://blog.golang.org/migrating-to-go-modules
- awesome-repositories: https://awesome-repositories.com/repository/kardianos-govendor.md

## Topics

`go` `golang` `vendor`

## Description

govendor is a toolset for Go dependency management that enables the replication of external packages into a local directory to ensure reproducible builds without requiring active network access. It functions as a dependency vendor tool and version manager, fetching specific git revisions, tags, or branches of remote packages.

The project includes a dependency auditor to identify missing, modified, or outdated packages compared to their remote sources. It also provides a license extraction utility that discovers and lists the legal licenses associated with project import paths and dependencies.

The system supports configuration-driven synchronization and build-tag aware filtering to exclude specific files or packages based on build constraints. It manages remote-to-local source mirroring and tracks specific revisions to maintain consistent package versions across environments.

## Tags

### Software Engineering & Architecture

- [Vendor Directories](https://awesome-repositories.com/f/software-engineering-architecture/isolated-runtime-directories/vendor-directories.md) — Replicates external Go package source code into a local vendor directory to enable offline builds.
- [License Compliance Reports](https://awesome-repositories.com/f/software-engineering-architecture/license-compliance-reports.md) — Generates reports identifying all open-source licenses and copyright statements within project dependencies.
- [Dependency License Extractors](https://awesome-repositories.com/f/software-engineering-architecture/licensing-information/dependency-license-extractors.md) — Automatically extracts and aggregates legal license files from all project dependencies.

### Development Tools & Productivity

- [Dependency Vendors](https://awesome-repositories.com/f/development-tools-productivity/dependency-managers/installation-resolution-utilities/dependency-installers/dependency-download-optimizers/dependency-vendors.md) — Archives external dependency source code locally to support reproducible builds without network access. ([source](https://github.com/kardianos/govendor/tree/master/docs/))
- [Lock File Vendors](https://awesome-repositories.com/f/development-tools-productivity/dependency-managers/installation-resolution-utilities/dependency-installers/dependency-download-optimizers/dependency-vendors/lock-file-vendors.md) — Pulls packages from remote repositories using specific revisions recorded in a configuration file. ([source](https://cdn.jsdelivr.net/gh/kardianos/govendor@master/README.md))
- [Go Module Dependencies](https://awesome-repositories.com/f/development-tools-productivity/go-module-dependencies.md) — Manages Go project dependencies by vendoring remote modules into a local directory.
- [Manifest-Driven Dependency Managers](https://awesome-repositories.com/f/development-tools-productivity/manifest-driven-dependency-managers.md) — Uses a project manifest to automatically download and arrange remote packages for reproducible builds.
- [Vendoring Automations](https://awesome-repositories.com/f/development-tools-productivity/package-dependency-managers/automated-dependency-updaters/vendoring-automations.md) — Automates the copying and updating of external packages into a local folder to ensure reproducible builds. ([source](https://cdn.jsdelivr.net/gh/kardianos/govendor@master/README.md))
- [Source Version Fetching](https://awesome-repositories.com/f/development-tools-productivity/source-version-fetching.md) — Retrieves specific git revisions, tags, or branches of remote packages into a local directory. ([source](https://cdn.jsdelivr.net/gh/kardianos/govendor@master/README.md))
- [Versioned Package Managers](https://awesome-repositories.com/f/development-tools-productivity/versioned-package-managers.md) — Manages specific versions of Go packages by fetching git revisions, tags, or branches.
- [Version Pinning](https://awesome-repositories.com/f/development-tools-productivity/versioned-package-managers/version-pinning.md) — Ensures consistent package versions across environments by pinning dependencies to specific git hashes or tags.
- [Build Artifact Exclusions](https://awesome-repositories.com/f/development-tools-productivity/build-artifact-purge-tools/build-artifact-exclusions.md) — Prevents specific packages or files restricted by build tags from being copied into the local vendor directory. ([source](https://cdn.jsdelivr.net/gh/kardianos/govendor@master/README.md))
- [Dependency Integrity Audits](https://awesome-repositories.com/f/development-tools-productivity/dependency-integrity-audits.md) — Identifies missing, modified, or outdated local packages relative to their remote source versions.
- [Source Integrity Auditors](https://awesome-repositories.com/f/development-tools-productivity/outdated-dependency-tracking/npm-dependency-auditors/source-integrity-auditors.md) — Identifies missing, modified, or outdated Go packages compared to their remote source versions.

### Operating Systems & Systems Programming

- [Remote-to-Local Path Mapping](https://awesome-repositories.com/f/operating-systems-systems-programming/remote-to-local-path-mapping.md) — Fetches content from remote version control systems and maps it to a local filesystem hierarchy.

### Programming Languages & Runtimes

- [Go Dependency Managers](https://awesome-repositories.com/f/programming-languages-runtimes/go-dependency-managers.md) — Provides specialized dependency management for Go projects by downloading specific versions into a local directory.

### Part of an Awesome List

- [Dependency Integrity Auditing](https://awesome-repositories.com/f/awesome-lists/security/dependency-integrity-auditing.md) — Provides a dependency auditor to identify missing, modified, or outdated packages compared to their remote sources. ([source](https://cdn.jsdelivr.net/gh/kardianos/govendor@master/README.md))
- [Dependency Management](https://awesome-repositories.com/f/awesome-lists/devtools/dependency-management.md) — Dependency management using vendor files.
- [Package Management](https://awesome-repositories.com/f/awesome-lists/devtools/package-management.md) — Vendor-based dependency management tool.

### DevOps & Infrastructure

- [Build Source Filters](https://awesome-repositories.com/f/devops-infrastructure/build-source-filters.md) — Provides mechanisms to exclude specific files or packages from the local vendor directory based on Go build tags.

### Security & Cryptography

- [Go License Scanners](https://awesome-repositories.com/f/security-cryptography/license-compliance-tools/go-license-scanners.md) — Scans Go dependencies to discover and list legal licenses for compliance. ([source](https://cdn.jsdelivr.net/gh/kardianos/govendor@master/README.md))
