awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
yyuu avatar

yyuu/pyenv

0
View on GitHub↗
44,899 星标·3,252 分支·Shell·MIT·5 次浏览

Pyenv

pyenv is a Python version manager and runtime orchestrator that allows for the installation and switching of multiple Python versions on a single machine without affecting the system installation. It functions as a shell-based version controller that manages binaries through shims to redirect executable calls to specific versions.

The tool is a plugin-extensible system, allowing users to add custom subcommands and logic via shell script plugins. This architecture enables the extension of the command line interface through a dedicated plugins directory.

It provides capabilities for side-by-side installation by building specific versions from source. Version management includes the ability to activate runtimes globally or on a per-project basis, the simultaneous activation of multiple versions, and the removal of installed runtimes.

Features

  • Python Version Managers - Installs and switches between different Python versions on a single machine without affecting the system installation.
  • Command Interception Shims - Uses lightweight proxy scripts to intercept command calls and redirect them to the correct Python version.
  • Runtime Version Managers - Downloads and builds specific Python versions from source based on a list of available releases.
  • Path-Based Version Switchers - Switches active Python versions by dynamically modifying the system PATH environment variable.
  • Shell-Based - Manages Python binaries through shell integration and shims to redirect executable calls.
  • Toolchain Versioning - Allows changing the active Python runtime globally or for specific directories.
  • Per-Project Runtime Assignments - Assigns a particular Python version to a specific directory so the correct environment is used for each project.
  • Python Runtime Managers - Provides an environment for managing multiple Python installations to test code across different releases.
  • CLI Extensions - Adding new subcommands and custom logic to the Python version manager using shell script plugins.
  • Plugin Systems - Provides a system for extending core functionality and adding custom subcommands via modular plugins.
  • Shell Plugin Architectures - Extends the tool's functionality by executing external shell scripts discovered in a dedicated plugins directory.
  • Configuration Cascade Resolutions - Determines the active Python version by cascading settings from the current directory up to the root.
  • Plugin-Extensible Runtimes - Implements a version management system that supports custom subcommands and logic via shell script plugins.
  • Version Managers - Enables simultaneous activation of several Python versions to search for commands across multiple installations.
  • Runtime Builds - Builds specific Python versions from source code to ensure compatibility with the local operating system.
  • Isolated Runtime Directories - Organizes multiple Python installations in independent directories to prevent conflicts between different version binaries.
  • Side-by-Side Runtimes - Enables the compilation of various Python versions on a single machine without interfering with the system-wide installation.
  • Environment Management - Simple Python version management.
  • Python Frameworks and Tools - Python version management tool.

Star 历史

yyuu/pyenv 的 Star 历史图表yyuu/pyenv 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Pyenv 的开源替代方案

相似的开源项目,按与 Pyenv 的功能重合度排序。
  • sstephenson/rbenvsstephenson 的头像

    sstephenson/rbenv

    16,711在 GitHub 上查看↗

    rbenv is a Ruby version manager and shell shim environment manager. It allows for the installation of multiple Ruby versions on a single machine and coordinates the selection of the active version based on the current directory or shell session. The tool functions as an extensible command line framework that intercepts executable calls using shell shims. These shims route requests to the selected language version, ensuring environment isolation by storing binaries in independent directories. The system includes capabilities for language runtime administration, including the ability to downlo

    Shell
    在 GitHub 上查看↗16,711
  • pyenv-win/pyenv-winpyenv-win 的头像

    pyenv-win/pyenv-win

    7,006在 GitHub 上查看↗

    pyenv-win is a version manager for Windows that enables the installation and switching of multiple Python versions without affecting the system global installation. It functions as a multi-version installer and environment controller that ensures isolation and reproducibility across different projects. The tool uses a shim-based routing system to intercept executable calls and direct them to specific versioned binaries. This allows for both system-wide default configurations and local directory-level overrides, where a specific version is automatically activated when entering a project folder

    VBScriptpyenvpyenv-alternativepyenv-for-windows
    在 GitHub 上查看↗7,006
  • rbenv/rbenvrbenv 的头像

    rbenv/rbenv

    16,710在 GitHub 上查看↗

    rbenv is a Ruby version manager and shell environment manager designed to install, switch between, and manage multiple versions of the Ruby programming language. It functions as a project runtime isolator and an extensible versioning framework that ensures the correct Ruby binaries are executed based on the current context. The system uses a shim-based command interception model to resolve the active version before delegating execution to the binary. It allows for locking specific Ruby versions and environment variables to individual directories, ensuring project environment isolation. The ar

    Shellbashrubyruby-installation
    在 GitHub 上查看↗16,710
  • astral-sh/ryeastral-sh 的头像

    astral-sh/rye

    14,209在 GitHub 上查看↗

    Rye is a comprehensive Python toolchain manager, package manager, and virtual environment orchestrator. It provides a unified system for installing Python runtimes, resolving dependencies, and coordinating isolated environments across different projects. The project distinguishes itself through workspace management capabilities that coordinate dependencies and builds across multiple libraries within a single multi-package project structure. It further enables the global installation of Python tools into sandboxed environments, making them accessible system-wide without manual environment acti

    Rustpackage-managerpackagingpython
    在 GitHub 上查看↗14,209
查看 Pyenv 的所有 30 个替代方案→

常见问题解答

yyuu/pyenv 是做什么的?

pyenv is a Python version manager and runtime orchestrator that allows for the installation and switching of multiple Python versions on a single machine without affecting the system installation. It functions as a shell-based version controller that manages binaries through shims to redirect executable calls to specific versions.

yyuu/pyenv 的主要功能有哪些?

yyuu/pyenv 的主要功能包括:Python Version Managers, Command Interception Shims, Runtime Version Managers, Path-Based Version Switchers, Shell-Based, Toolchain Versioning, Per-Project Runtime Assignments, Python Runtime Managers。

yyuu/pyenv 有哪些开源替代品?

yyuu/pyenv 的开源替代品包括: sstephenson/rbenv — rbenv is a Ruby version manager and shell shim environment manager. It allows for the installation of multiple Ruby… pyenv-win/pyenv-win — pyenv-win is a version manager for Windows that enables the installation and switching of multiple Python versions… rbenv/rbenv — rbenv is a Ruby version manager and shell environment manager designed to install, switch between, and manage multiple… astral-sh/rye — Rye is a comprehensive Python toolchain manager, package manager, and virtual environment orchestrator. It provides a… nvm-sh/nvm — This project is a command-line tool designed for managing multiple runtime versions on a local machine. It functions… version-fox/vfox — Vfox is a command-line utility designed to manage multiple programming language runtimes and development tools on a…