我正在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
和dependency_links
参数。
上述设置文件无法访问私有存储库,并显示404错误-这是可以预期的,因为GitHub将404返回给未经授权的私有存储库请求。但是,我不知道如何进行setuptools
身份验证。
这是我尝试过的一些方法:
如果使用
git+ssh://
来安装仓库,请使用而不是https://
in 。这会失败,因为setuptools无法识别此协议(“未知的url类型:git + ssh”),尽管分发文档说可以。同上和。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
打印出一条警告,指出必须单独下载私有存储库。这显然不理想。我觉得似乎有些明显的东西我不见了,但是无法想像是什么。:)
重复的问题,这里没有答案。