elixir – 为什么MIX依赖项在依赖的语义版本之前有“〜>”?

前端之家收集整理的这篇文章主要介绍了elixir – 为什么MIX依赖项在依赖的语义版本之前有“〜>”?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在mix.exs上,您可以声明依赖项,如:

def deps do
  [{:plug,"~> 1.0"}]
end

为什么需要“〜>”而不仅仅是元组第二部分的版本.

我已经看到,如果它从git获得依赖,你可以编写依赖,如:

def deps do
  [{:plug,git: "git://github.com/elixir-lang/plug.git"}]
end

解决方法

Version模块支持这个花哨的箭头.它使用由数字设置的精度来舍入您的依赖关系,该数字是最特定的数字的邻居.

例:

~> 2.0.0

手段

get version between 2.0.0 and 2.1.0,because this 0 in the center is the left neighbour of the most specific one.

查看Version模块中的更多示例.

基本上这是为了您的方便,因为它允许您在混合deps.upgrade时自动升级您的deps,但它可以让您控制升级 – 您可以下载升级,这会崩溃您当前的代码库等.

猜你在找的设计模式相关文章