Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/302.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python pip安装专用软件包_Python_Pip_Setuptools - Fatal编程技术网

Python pip安装专用软件包

Python pip安装专用软件包,python,pip,setuptools,Python,Pip,Setuptools,我有一个python包A,它依赖于另一个名为godot的私有包(托管在bitbucket上,应该通过git+ssh协议访问)。在包A的setup.py中,我有以下代码: ... install_requires=['godot'], dependency_links=['git+ssh://git@bitbucket.org/xxx/godot.git#egg=godot'] ... 我这里有两个问题: 现在,setuptools 1.4(最新稳定版本)不支持“git+ssh”协议,只有开发分

我有一个python包A,它依赖于另一个名为godot的私有包(托管在bitbucket上,应该通过git+ssh协议访问)。在包A的setup.py中,我有以下代码:

...
install_requires=['godot'],
dependency_links=['git+ssh://git@bitbucket.org/xxx/godot.git#egg=godot']
...
我这里有两个问题:

  • 现在,setuptools 1.4(最新稳定版本)不支持“git+ssh”协议,只有开发分支中的代码处理此协议:。我已通过以下方式安装了开发版本:

    pip安装--升级--强制重新安装hg+https://bitbucket.org/pypa/setuptools#egg=setuptools

    我几乎解决了这一点,但我想知道是否还有其他方法可用?调用pip安装-r requirements.txt(havegit+ssh://git@bitbucket.org/xxx/godot.git#egg=godotrequirements.txt中的列表)

  • 第二个问题是名称冲突。pypi上还有另一个名为godot的包,因此当我使用follow命令安装包A时,pip将从pypi索引安装godot:

    pip安装git+ssh://git@pypi.corp.com/xxx/A.git#egg=A

    如何强制pip(setup.py)安装私有godot包,而不是pypi索引上的包


  • 对于第1部分:您可以通过指定为通过pip安装软件包:

    $ pip install http://my.package.repo/SomePackage-1.0.4.zip
    
    为了保持简单并避免花费过多的时间,我只需下载
    .zip
    源文件并通过pip进行安装,如上所述

    对于第2部分:pip有一个
    --无依赖关系的开关。在手动安装所有依赖项之后添加该选项