无法验证这些要求的哈希值,因为我们没有办法对版本控制存储库进行哈希处理

Can't verify hashes for these requirements because we don't have a way to hash version control repositories

我有以下需求文件:

...
sqlalchemy==1.2.3 --hash=sha256:9e9ec143e2e246f385cfb2de8daa89d2fa466279addcb7be9e102988fdf33d24
werkzeug==0.14.1 --hash=sha256:d5da73735293558eb1651ee2fddc4d0dedcfa06538b8813a2e20011583c9e49b  
git+ssh://gitlab.domain.com/private_pkg.git#egg=private_pkg

从 shell 安装项目完美无缺:

pip install git+ssh://gitlab.domain.com/private_pkg.git#egg=private_pkg

但尝试从要求文件安装它会引发此错误:

Can't verify hashes for these requirements because we don't have a way to hash version control repositories:
    private_pkg from git+ssh://gitlab.domain.com/private_pkg.git#egg=private_pkg (from -r requirements/prod.lock (line 30))

注意:pipenv lock -r

生成的需求文件中的哈希值

pip 中的 --hash 选项是全有或全无。您要么指定 none,要么需要指定所有这些。但是,未托管在 PyPI 上的包不能有哈希,这会导致失败。使用任何设置了 --hash 选项的包安装您的项目,您就会看到问题所在。

较新版本的 Pipenv 完全从导出的 requirements.txt 中删除了哈希以避免出现此问题。