Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/351.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.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 私有Pypi服务器与私有Github repo_Python_Github_Pip_Pypi - Fatal编程技术网

Python 私有Pypi服务器与私有Github repo

Python 私有Pypi服务器与私有Github repo,python,github,pip,pypi,Python,Github,Pip,Pypi,我试图理解托管自己的Pypi服务器比从私有github repo安装pip的优势。 如果我可以在setup.py或requirement.txt中包含github依赖项链接,并且github URL支持版本控制。 到目前为止,我能看到的唯一一点是可读性 pip install my_package==1.0.0 反而 pip install git+https://github.com/my_package@v1.0.0#egg=my_package-1.0.0 简而言之,PyPI支持许多从

我试图理解托管自己的Pypi服务器比从私有github repo安装pip的优势。 如果我可以在setup.py或requirement.txt中包含github依赖项链接,并且github URL支持版本控制。 到目前为止,我能看到的唯一一点是可读性

pip install my_package==1.0.0
反而

pip install git+https://github.com/my_package@v1.0.0#egg=my_package-1.0.0

简而言之,PyPI支持许多从git安装所不支持的特性。功能太多,无法一一命名,但有几个功能包括:

  • 支持从已编译的二进制文件(如wheels、tar.gz、source等)上载和安装
  • 支持“猛拉”版本
  • 支持多种格式,包括源代码、鸡蛋、轮子等
  • 为客户端解析程序包的多个版本及其与Python的版本、平台和体系结构(例如windows_x86上的Python 3.6.4与linux_x64上的Python 3.7.1)的兼容性(例如,自动安装程序包的兼容版本)
  • 将包的适当版本解析为其他项目的依赖项
  • 从多个服务器解析时,可以添加为(附加)索引服务器
  • 支持预发布
  • 无需git即可由客户端安装

使用pypi,软件包在别处构建并捆绑安装,这意味着它可以处理比从github调用setup.py更多的软件包类型。从git安装意味着克隆,您也可以从tar文件或zip安装。如果你的软件包是可以从git安装的,那么用这种方式就可以了。。。假设所有用户都有git。