Coding

pipreqs - 설치한 라이브러리만 requirements로 뽑고 싶을 때

교 향 2022. 7. 14. 18:34

$ pip freeze > requirements.txt

개발환경이 바뀌었을 때 등, 일일이 패키지를 설치하지 않도록 하기 위해 (패키지를 requirements로 만들어 한 번에 설치토록 할 때), 대다수는 위와 같이 pip freeze 를 많이 사용해왔다.

 

하지만 사용하다 보면 불편한 점이,

1.  라이브러리 버전이 다르거나

2. 내가 설치하지 않았다고 생각하는 라이브러리가 깔려있거나

3. 예를 들어, numpy @ file:///C:/ci/numpy_and_numpy_base_1652802206636/work 과 같이 수정해줘야 하는 등의 라이브러리들이 requirements 안에 섞이는데, 이는 pip freeze가 freeze를 하려는 '지금 그 가상환경'의 예전 패키지 까지 전부 떠오기 때문이다.

 

그리하여 '내가 설치했던 패키지만' requirements.txt에 떠오고 싶을 때 pipreqs를 사용하면 유용하다.

사용법은 다음과 같다.

$ pip install pipreqs

(Usage)
pipreqs [options] [<path>]

(Usage Example)
$ pipreqs /home/project/location
Successfully saved requirements file in /home/project/location/requirements.txt

(before)

















(after)

 

확연히 줄고 가벼워 졌다.

 

세부적인 내용은 개발자의 git을 참고하자.

[  Pipreqs git address : https://github.com/bndr/pipreqs   ]