gpt4 book ai didi

python - Pip freeze 不显示需求文件的存储库路径

转载 作者:IT老高 更新时间:2023-10-28 20:54:34 26 4
gpt4 key购买 nike

我已经创建了一个环境,并通过 git 添加了一个包 django-paramfield:

$ pip install git+https://bitbucket.org/DataGreed/django-paramfield.git
Downloading/unpacking git+https://bitbucket.org/DataGreed/django-paramfield.git
Cloning https://bitbucket.org/DataGreed/django-paramfield.git to /var/folders/9Z/9ZQZ1Q3WGMOW+JguzcBKNU+++TI/-Tmp-/pip-49Eokm-build
Unpacking objects: 100% (29/29), done.
Running setup.py egg_info for package from git+https://bitbucket.org/DataGreed/django-paramfield.git
Installing collected packages: paramfield
Running setup.py install for paramfield
Successfully installed paramfield
Cleaning up...

但是当我想创建一个需求文件时,我只看到包名:

$ pip freeze
paramfield==0.1
wsgiref==0.1.2

如何让它输出整个字符串 git+https://bitbucket.org/DataGreed/django-paramfield.git 而不仅仅是一个包名?包不在 PyPi 中。

UPD:也许,它与 setup.py 有关系?我应该以某种方式更改它以反射(reflect) repo 网址吗?

UPD2:我在 stackoverflow 中发现了一个非常相似的 question,但作者不确定他是如何解决问题的,不幸的是,接受的答案并没有给出很好的提示,尽管判断从作者的评论来看,它与 setup.py 文件有关。

UPD3:我尝试在 setup.py 中传递 download_url 并使用此 url 通过 pip 安装包,但问题仍然存在。

最佳答案

一个简单但可行的解决方法是安装带有 -e 标志的软件包,例如 pip install -e git+https://bitbucket.org/DataGreed/django-paramfield。 git#egg=django-paramfield.

然后pip freeze显示包的完整源码路径。这不是应该在 pip 中修复的最佳方法,但它正在工作。 -e (编辑标志)的权衡是 pip 将 git/hg 存储库克隆到 /path/to/venv/src/packagename 并运行 python setup .py deploy 而不是将其克隆到临时目录并运行 python setup.py install 并在安装包后删除临时目录。

关于python - Pip freeze 不显示需求文件的存储库路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11560056/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com