回答編集履歴

2

補足追記

2020/10/19 12:51

投稿

toast-uz
toast-uz

スコア3266

test CHANGED
@@ -10,7 +10,7 @@
10
10
 
11
11
 
12
12
 
13
- しかし、インストールで`go get github.com/go-resty/resty/v2`とすると失敗します。GitHubのリポジトリに、v2のブランチやタグは無いからです。
13
+ しかし、インストールで`go get github.com/go-resty/resty/v2`とすると失敗します。GitHubのリポジトリに、v2のブランチやタグは無く、v2.x.xとったタグがあるためです。
14
14
 
15
15
 
16
16
 
@@ -18,7 +18,7 @@
18
18
 
19
19
 
20
20
 
21
- インストールは上記でもよいですが、できれば、`go get github.com/go-resty/resty`で行ってください。v2は不要です。これにより、最新のmasterブランチの内容がインストールされます。[https://github.com/go-resty/resty/blob/master/README.md](https://github.com/go-resty/resty/blob/master/README.md)の最後の方に、`Resty v2 does not use gopkg.in service for library versioning.`と記載されており、restyが今はgopkg.inの利用を前提としていない可能性があります。
21
+ インストールは上記でもよいですが、できれば、`go get github.com/go-resty/resty`で行ってください。v2は不要です。これにより、最新のmasterブランチの内容がインストールされます。[https://github.com/go-resty/resty/blob/master/README.md](https://github.com/go-resty/resty/blob/master/README.md)の最後の方に、`Resty v2 does not use gopkg.in service for library versioning.`と記載されており、restyが今はgopkg.inの利用を前提としていない可能性があります。よって、gopkg.inは使わない方が良いです。
22
22
 
23
23
 
24
24
 

1

補足追記

2020/10/19 12:51

投稿

toast-uz
toast-uz

スコア3266

test CHANGED
@@ -10,7 +10,21 @@
10
10
 
11
11
 
12
12
 
13
- しかし、インストールは、`go get github.com/go-resty/resty`で行ってください。v2は不要です。
13
+ しかし、インストール`go get github.com/go-resty/resty/v2`とすると失敗しますGitHubのリポジトリに、v2のブランチやタグ無いからです。
14
+
15
+
16
+
17
+ 一方、gopkg.inを利用すると、[https://labix.org/gopkg.in](https://labix.org/gopkg.in)に記載されているように、v2として指定すると、v2系の最新のタグまたはブランチに変換されるようです。現在の場合、`go get github.com/go-resty/resty/v2.3.0`に変換されます。
18
+
19
+
20
+
21
+ インストールは上記でもよいですが、できれば、`go get github.com/go-resty/resty`で行ってください。v2は不要です。これにより、最新のmasterブランチの内容がインストールされます。[https://github.com/go-resty/resty/blob/master/README.md](https://github.com/go-resty/resty/blob/master/README.md)の最後の方に、`Resty v2 does not use gopkg.in service for library versioning.`と記載されており、restyが今はgopkg.inの利用を前提としていない可能性があります。
22
+
23
+
24
+
25
+ 最後に、なぜこのようないろいろなバージョン指定(または指定しない)でインストールして、`import "github.com/go-resty/resty/v2"`という使い方ができるのかを、解説します。
26
+
27
+
14
28
 
15
29
  go1.13にかけて、goのモジュールシステムに変更が加わり、go.modによってバージョン等のサブモジュールを定義できるようになりました。
16
30
 
@@ -19,3 +33,7 @@
19
33
  [https://github.com/go-resty/resty/blob/master/go.mod](https://github.com/go-resty/resty/blob/master/go.mod)
20
34
 
21
35
  がそのモジュール定義でして、githubおよびGOPATH配下の物理的な位置(フォルダ)と、import指定との間に、一定の自由度が作れるようになっています。
36
+
37
+
38
+
39
+ よって、`import "github.com/go-resty/resty/v2"`で使えるようになっているわけです。