2026 04 07
2026-04-07¶
uv¶
참고: https://github.com/astral-sh/uv
참고: https://wikidocs.net/238310
참고: https://sigridjin.medium.com/%ED%8C%8C%EC%9D%B4%EC%8D%AC-%EA%B0%9C%EB%B0%9C%EC%9E%90%EB%9D%BC%EB%A9%B4-uv-%EB%A5%BC-%EC%82%AC%EC%9A%A9%ED%95%A9%EC%8B%9C%EB%8B%A4-546d523f7178
참고: https://devocean.sk.com/blog/techBoardDetail.do?ID=167420&boardType=techBlog
- 개요
- 패키지 설치 및 관리와 패키지 빌드 및 배포까지 모두 가능한 파이썬 종속성/패키지/프로젝트 관리 툴
- 기존
pip,pip-tools,pipx,poetry,pyenv,twine,venv등의 프로젝트, 패키지 관리 툴 모두 대체!
- 기존
- Rust로 만들어 빠름
- 가상환경 생성, 의존성 관리, 파이썬 버전 관리, 패키징, 포매터/린터 등 서드파티 도구 실행 처리
- 패키지 설치 및 관리와 패키지 빌드 및 배포까지 모두 가능한 파이썬 종속성/패키지/프로젝트 관리 툴
- 가상환경
- 프로젝트마다 의존성 (패키지/버전)을 격리해서 관리하기 위함
- 파이썬은 pip로 패키지 설치하면 기본적으로 전역 site-packages에 들어감. 그 위 여러 프로젝트가 공유하여 쓰게 됨
- 전역으로 설치하다보니, Django 버전이 다르게 두 프로젝트가 각각 필요하면, 충돌 생길 수 있음
- 가상환경을 통해 프로젝트마다 독립된 site-packages를 사용하여 격리
- 각 프로젝트의
requirements.txt,pyproject.toml로 정확한 패키지 버전 고정하면, pip install 하면 동일한 환경 재현
- uv
- 가상환경 만드는 방법
uv venv .venv
- 파이썬 환경 설정 및 자동 설치
uv venv -p 3.13
- 패키지 설치하기
uv pip install pytests
- 가상환경 만드는 방법
-
예시
-
프로젝트 생성
-
의존성 설치
uv run명령어로 Python 파일을 실행할 때, 자동으로 .venv 환경이 적용
-
- 명령어 소개
uv init: 새로운 uv 프로젝트 초기화, pyproject.toml 생성uv add <패키지명>: 특정 패키지 추가uv add -r requirements.txt: 전체 패키지 추가uv sync: pyproject.toml과 uv.lock 파일을 기준으로 가상환경 재생성 및 동기화uv run: 가상환경을 자동 적용하여 파이썬 스크립트 실행