我正在setup.py
为一个依赖于私有 GitHub 存储库的项目创建一个文件。文件的相关部分如下所示:
from setuptools import setup
setup(name='my_project',
...,
install_requires=[
'public_package',
'other_public_package',
'private_repo_1',
'private_repo_2',
],
dependency_links=[
'https://github.com/my_account/private_repo_1/master/tarball/',
'https://github.com/my_account/private_repo_2/master/tarball/',
],
...,
)
我正在使用setuptools
而不是distutils
因为后者不支持这个答案的install_requires
anddependency_links
参数。
上述设置文件无法访问私有存储库并出现 404 错误 - 这是意料之中的,因为 GitHub 会向未经授权的私有存储库请求返回 404。但是,我不知道如何进行setuptools
身份验证。
以下是我尝试过的一些事情:
如果使用.
git+ssh://
_ _ 这失败了,因为 setuptools 无法识别此协议(“未知 url 类型:git+ssh”),尽管分发文档说它应该。同上和。https://
dependency_links
pip
git+https
git+http
https://<username>:<password>@github.com/...
- 仍然得到 404。(此方法也不适用于命令行curl
或wget
来自命令行 - 尽管curl -u <username> <repo_url> -O <output_file_name>
确实有效。)将 setuptools (0.9.7) 和 virtualenv (1.10) 升级到最新版本。尽管此概述说它已合并回 setuptools,但也尝试安装分发。无论哪种方式,没有骰子。
目前我只是setup.py
打印出一个警告,私人回购必须单独下载。这显然不太理想。我觉得我错过了一些明显的东西,但想不出它可能是什么。:)
重复的问题,这里没有答案。