1. ホーム
  2. go

[解決済み] go get でパッケージをインストールするにはどうしたらいいですか?

2022-03-02 16:21:47

質問

githubからパッケージをインストールし、自分の $GOPATH 私はこれを試してみました。

go get github.com:capotej/groupcache-db-experiment.git

リポジトリは ここで .

解決方法は?

<ブロッククオート

コマンド

パッケージと依存関係のダウンロードとインストール

使用方法

go get [-d] [-f] [-t] [-u] [-v] [-fix] [-insecure] [build flags] [packages]

importパスで指定されたパッケージと、そのパッケージをダウンロードします。 を使用します。そして、'go install' のように、指定されたパッケージをインストールします。

d フラグは、get がパッケージをダウンロードした後に停止するように指示します。 は、パッケージをインストールしないように指示します。

f フラグは、-u が設定されているときのみ有効で、get -u に 各パッケージがソース管理システムからチェックアウトされていること インポートパスによって暗示されるリポジトリ。これは のローカルフォークである。

fixフラグは、getがダウンロードされた パッケージは、依存関係の解決やコードのビルドの前に使用されます。

insecureフラグは、リポジトリからの取得と解決に使用されます。 HTTPのような安全でないスキームを使用したカスタムドメイン。注意して使用してください。

t フラグは、get に、このパッケージのダウンロードに必要なパッケージもダウンロードするよう指示します。 指定されたパッケージのテストを構築します。

u フラグは、get がネットワークを使用して、指定された パッケージとその依存関係を表示します。デフォルトでは、get はネットワークを使って の更新を探すために使用することはありません。 既存のパッケージ

v フラグを使用すると、冗長な進行状況とデバッグ出力が可能になります。

Get は、インストールを制御するためのビルドフラグも受け付けます。詳細は 'go help ビルド'です。

新しいパッケージをチェックアウトするとき、get はターゲットディレクトリを作成します。 GOPATH/src/ です。GOPATH に複数のエントリがある場合は、get は最初のものを使用します。詳しくは、以下を参照してください。go help gopath'を参照してください。

パッケージのチェックアウトやアップデートの際に、getはブランチやタグを探します。 というのは、ローカルにインストールされている Go のバージョンと一致するからです。最も重要なのは ルールは、ローカルインストールのバージョンが "go1" である場合、 get は "go1" という名前のブランチまたはタグを探します。そのようなバージョンが存在しない場合 は、パッケージのデフォルトブランチを取得します。

go get が Git リポジトリをチェックアウトまたは更新するとき、同時に そのリポジトリから参照されるすべての git サブモジュール。

Get は、ベンダーディレクトリに格納されているコードをチェックアウトまたは更新することはありません。

パッケージの指定について詳しくは、「go help packages」を参照してください。

go get」がダウンロードするソースコードを見つける方法について詳しくは、「go help importpath'を参照してください。

この文章は、GOPATH を使って管理する場合の get の動作について説明しています。 のソースコードと依存関係を表示します。代わりに、go コマンドが モジュール認識モードでは、get のフラグや効果の詳細が変化します。 は 'go help get' と同じです。go help modules' と 'go help module-get' を参照してください。

go build、go install、go clean も参照してください。


例えば、冗長出力を表示する。

$ go get -v github.com/capotej/groupcache-db-experiment/...
github.com/capotej/groupcache-db-experiment (download)
github.com/golang/groupcache (download)
github.com/golang/protobuf (download)
github.com/capotej/groupcache-db-experiment/api
github.com/capotej/groupcache-db-experiment/client
github.com/capotej/groupcache-db-experiment/slowdb
github.com/golang/groupcache/consistenthash
github.com/golang/protobuf/proto
github.com/golang/groupcache/lru
github.com/capotej/groupcache-db-experiment/dbserver
github.com/capotej/groupcache-db-experiment/cli
github.com/golang/groupcache/singleflight
github.com/golang/groupcache/groupcachepb
github.com/golang/groupcache
github.com/capotej/groupcache-db-experiment/frontend
$