2016-01-27 58 views
0

例如,如果我们有一个版本类似“1.0.0”的软件包,那么它会将版本更改为“0.0.10”时期。所以,如果我们以包装的方式比较它“1:0.0.10”>“1.0.0”,那么确实如此。但是pip没有时代,所以它会根据变化日期=“0.0.10”采取最新的,我想。那么,这两个版本(“0.0.10”和“1.0.0”)如何正确比较(例如使用python)呢?如何比较pip版本与debian版本控制?

回答

1

根据PEP 0440项目中(https://www.python.org/dev/peps/pep-0440/#version-scheme

最终版本必须在持续增加的方式进行编号,否则自动化工具将无法给他们正确升级

因此, 1.0.0之后的版本必须是1.0.1或1.1.0或2.0.0。

编辑:正如你所指出的,实际上有一个支持与Python和PIP的时代。所以你必须使用1!0.0.10来告诉python你的版本实际上比1.0.0更新。请注意,你将不得不保持1!在所有进一步发布。如果你碰巧再次改变了数字,那么它就是2!1.0.0等等。

+0

谢谢,但根据这个文档,我错了,并有时代(https://www.python.org/dev/peps/pep-0440/#version-epochs)!此规则也适用于版本部分。所以,在一个项目中,pip可以具有“1.0.0”和“1!0.0.10”版本! :) – NULL

+0

你其实是对的,我从来没有使用过这种功能,很高兴你找到了你的答案,但无论如何,我会编辑我的答案,因为我错了。 – Mijamo