2010-09-11 102 views
0

可能重複:
Meaning of ~> in version requirement〜>運算符是什麼意思?

我經常絆倒在了〜>操作。

例如。

gem 'httparty', '~> 0.5.2' 

這是什麼意思?

+0

您的標題和問題的第一行不同於示例!你的問題是哪個操作員?我的答案是關於gem依賴關係中使用的〜>運算符。 – 2010-09-11 20:23:08

+0

@Jörg:你有手動搜索嗎?人們如何做到這一點以找到重複的東西? – 2010-09-11 20:48:07

+1

在這個特例中,我知道我a)自己已經回答了這個問題,並且b)在答案中使用了*悲觀版本約束*,所以我只是在搜索框中搜索了'user:me [ruby] pessimistic' 。在更一般的情況下,我只是閱讀(或至少瀏覽)StackOverflow上的每個Ruby問題,所以我至少簡要地瞥一眼13000個問題中的每一個問題,並且我記得哪些問題已經被問及回答。 – 2010-09-11 22:14:41

回答

3

它被稱爲pessimistic version constraint。它通過刪除最後一位數字並比較相等來匹配寶石版本。例如,~> 0.5.2將匹配版本0.5.2或0.5.3,但不匹配0.5或0.6。它基本上相當於約束條件>= 0.5.2, < 0.6

+0

看起來鏈接已損壞。這是一個關於這個想法的更新的頁面。 http://guides.rubygems.org/patterns/只需搜索文檔中的悲觀版本控制即可快速找到它。 – 2017-07-07 08:49:43