9 个仓库
Mechanisms for pinning external library versions using git tags and submodules to ensure consistent environments.
Distinct from Git Submodule Integration: Distinct from Git Submodule Integration by focusing on the version locking and resolution logic rather than just the git mechanism.
Explore 9 awesome GitHub repositories matching devops & infrastructure · Dependency Version Locking. Refine with filters or upvote what's useful.
Carthage is a decentralized dependency manager for Cocoa projects and an automation tool for Xcode builds. It functions as a Git-based framework manager and binary distribution tool used to fetch, build, and manage external libraries. The project distinguishes itself by supporting the production and distribution of platform-independent binary frameworks and static libraries. It utilizes Git tags and submodules to lock specific versions of external libraries and provides mechanisms to distribute prebuilt binaries via zipped release archives. The system covers dependency resolution and version
Uses Git tags and submodules to lock specific versions of external libraries and ensure environment consistency.
CocoaPods is a dependency manager for Swift and Objective-C projects that integrates third-party libraries via configuration files. It serves as a project workspace orchestrator, coordinating the build process and linking external dependencies through centralized workspace configurations. To ensure environment consistency across different development machines, it employs a manifest-based version locking system. The project provides a version-controlled library specification registry for managing and distributing metadata and source paths for reusable code modules. It includes tools for extern
Implements a manifest-based system for pinning external library versions to ensure consistent build environments.
Earthly is a containerized build system and Docker build framework designed for creating reproducible build pipelines. It ensures environment consistency by executing every build step inside an isolated container, combining the isolation of container images with dependency tracking and parallel execution. The system differentiates itself through a focus on hermeticity and multiplatform support, allowing for the generation of container images targeting multiple CPU architectures within a single execution flow. It maintains a hermetic build environment by isolating network access and utilizing
Ensures build reproducibility by specifying particular Git tags or branches for remote dependencies.
Approachingalmost is a machine learning dependency manager and environment bootstrapper designed to create consistent Python runtimes for data science. It provides a collection of version-locked libraries and system requirements to ensure that development workspaces remain stable across different machines. The project utilizes a file-driven mapping of specific Python versions and system libraries to automate the installation of dependencies. This declarative approach decouples environment specifications from installation logic, enabling a reproducible research workflow where experiments remai
Enforces strict version requirements for Python and critical system libraries to ensure reproducible experiments.
Pins font versions in NPM dependencies to prevent unexpected updates from breaking production sites.
Bundler is a Ruby dependency manager that resolves gem versions and locks them in a lockfile so every machine installs the same set of dependencies. It manages package sources, provides environment diagnostics, and wraps commands and consoles to run inside a consistent gem context, preventing version mismatches across development, testing, and production. Unlike a simple package installer, Bundler uses a SAT solver to find a consistent set of gem versions satisfying all constraints, segregates authentication secrets from source URLs, and enforces platform-specific dependency filtering. Its lo
Records exact versions of every installed gem so the same set is reproduced on any machine.
zimfw 是一个 Zsh 配置框架和插件管理器,旨在自定义和优化 Zsh Shell 环境。它作为一个系统,用于安装、更新和固定来自远程或本地仓库的 Shell 扩展和主题。 该框架通过使用脚本的字节码编译来减少启动时间并提高执行速度,从而专注于 Shell 性能。它采用模块管理的声明式配置模型,允许进行版本固定的依赖解析,并具备在不进行完整 git 克隆的情况下获取模块的能力,以加速安装。 该项目提供了管理 Shell 扩展、应用视觉主题以及通过实时元数据增强命令提示符的功能。它还包括对跨不同操作系统自动化包管理和简化 git 仓库操作的集成支持。
Ensures environment consistency by locking modules to specific git branches or tags during installation.
RubyGems 是 Ruby 语言的包管理器,用作打包、分发和安装库及软件扩展的工具。它作为一个依赖解析器和注册表客户端,管理所需库及其递归依赖项的安装,以确保开发和生产环境的一致性。 该系统处理完整的包生命周期,包括构建可分发的归档文件、编译用于高性能系统集成的原生 C 扩展,以及向注册表发布稳定或预发布版本。它提供了一个安全框架,包括加密包签名、用于发布的多因素身份验证,以及用于协作包所有权和组织管理的基于角色的访问控制。 广泛的能力涵盖了通过项目特定目录进行环境隔离、通过清单文件进行版本锁定以保证可重现的构建,以及运行时加载路径操作。该工具集还包括注册表管理功能,如私有仓库托管、远程源镜像和 API 请求限流。 命令行界面提供了用于 API 密钥管理、已安装包检查以及库内置文档查看器的工具。
Creates a snapshot of exact versions of all installed libraries to guarantee reproducible environments.
This project provides a functional package manager and a reproducible build system designed to ensure identical build inputs always produce the same outputs. It serves as the foundation for a declarative Linux distribution where the entire system state is defined in a configuration file, enabling predictable deployments and full-system rollbacks. The system uses a deterministic functional language and a lazy-evaluation expression engine to manage software dependencies and isolate build environments. It distinguishes itself through a content-addressable store that allows multiple versions of s
Provides mechanisms for recording exact package versions in lock files to ensure consistent, reproducible builds.