私はすでにgithubに既存のプロジェクトを持っており、deps jsonファイルはGodepsフォルダとベンダーフォルダ内の依存パッケージに保存されています。godepsにパッケージを追加する方法
は今、私はツールを戦わない既存のJSONファイルとベンダーのパッケージフォルダ
私はすでにgithubに既存のプロジェクトを持っており、deps jsonファイルはGodepsフォルダとベンダーフォルダ内の依存パッケージに保存されています。godepsにパッケージを追加する方法
は今、私はツールを戦わない既存のJSONファイルとベンダーのパッケージフォルダ
には何も影響を与えずに、リストに新しいパッケージを追加する方法が必要です。 godep
は、ご自分のjsonファイルとベンダフォルダを更新してください。あなたの元のGodeps/godeps.json
ファイルをどれくらい妨害しても問題ありません。
godep restore // put everything in a known state
go get -u foo/bar // get new package
go test ./... // make sure everything is up to snuff
go run main.go // run your code
godep save ./... // update `godeps.json` to current state of packages
あなたの新しいパッケージのgo get -u foo/bar
を使用している場合、これが唯一のfoo/bar
の新しいパッケージに影響を与えます - それはあなたの既存のパッケージを更新しません。
-uフラグは、名前付きパッケージとその依存関係を更新するためにネットワークを使用するように指示します。デフォルトでは、getはネットワークを使用して欠落しているパッケージをチェックアウトしますが、既存のパッケージの更新を探すためには使用しません。サイドノートとして https://golang.org/cmd/go/
、私はあなたの$GOPATH
をdisburbするgodep
接頭辞を使用してそうではないのが習慣になってお勧めします。
go get -u foo/bar // get new package
godep go test ./... // test your package, using your /vendor deps
godep go run main.go // run your code, using your /vendor deps
godep save ./... // update godeps if everything checks out
それははるかに簡単に複数のレポを切り替えることができます。
ヒント:チームの "ローカル開発環境"に合わせて、設定のデフォルトを適切に設定してください。例えば。 "dev/dev"のようなDBユーザー名/パスワードなど。そうすれば、godep go run main.go
でパラメータを渡す必要はありません。ニースとシンプル。