是否有任何技术指标倾向于在requirements.txt
的GitHub上对原始来源引用PyPI上的包?
只有我想到的是,使用GitHub(package==1.0.0
vs git://github.com/{ username }/{ reponame }.git@{ tag name }#egg={ desired egg name }
)冻结某个版本的软件包非常麻烦,但我不确定这是否会导致任何问题
其他的事情是必须在目标机器上安装git。
还有其他迹象吗?
答案 0 :(得分:1)
PyPI是用于分发程序包的发布版本的可接受的事实位置,并且可能并非所有Python打包工具都支持从GitHub安装。
正如您已经注意到的那样,pip
要支持GitHub,您必须安装git
;这限制了文件的可移植性。
接下来,并非所有项目维护者都记得在GitHub中标记版本;分发给PyPI的内容可能很难在GitHub上找到。标签也可能错误。您最终可能会从PyPI安装一个略有不同的版本,当您遇到支持问题时会产生混淆。
另一方面,如果你必须安装一个未发布的开发版本(比如说,你需要一个关键的bug修复,但是之后没有发布过任何版本),那么GitHub可能是唯一可以获得该版本的版本。
因此,简而言之,您应该更喜欢在GitHub上使用PyPI,因为这可以确保您获得正式版本,并且更具可移植性。如果特定版本没有其他来源,则仅在requirements.txt
中使用GitHub网址。