2017-08-14 4 views
3

私はNode.jsからGoに行きます。私はすべてのモジュールを追加することに慣れていて、私のパッケージを複製するときにはnpm installに行かなければなりません。Golangのpackage.json相当

Goとこれに相当するものは何ですか?私はいくつかのインポートを持っていて、パッケージを使用している人は手動でインストールする必要はありません。

単純なGoアプリケーションをpackage mainで作成するかどうかはわかりませんが、これは人々にちょうどgo getを許可しています。私はNode.jsのようなリポジトリ共有のGoの方法を実際に拾いました

+2

は、get -v -tを行くhttps://github.com/golang/go/wiki/PackageManagementTools – ymonad

+2

を参照してください/ ...再帰的にすべての輸入をインストールします。はい、それは最初のドットの後に空白がない3つのドットです –

答えて

1

基本的には、ベンダーを見てください。バージョン管理に役立つツールがあります。個人的には、参照したパッケージをgitサブモジュールとしてベンダーのフォルダに "取得"する小さなツールであるvendettaを使用します。だから誰かが私のレポをチェックアウトすれば、彼らは単にgit submodule update --init --recursiveをやります。パッケージのバージョンは、それぞれのサブモジュールでgit commit idとして指定できます。

デープをファイルに保存するツールもあります。hereをチェックしてください。

2

Goとこれに相当するものは何ですか?私はいくつかのインポートを持っていて、パッケージを使用している人は手動でインストールする必要はありません。

何もする必要はありません。人がインポートするパッケージを手動でインストールする必要はありません。誰かが行うとき

go get github.com/FrickeFresh/awesome 

あなたの素晴らしいパッケージにインポートするすべてのものが必要に応じて自動的にダウンロードされます。

go get -t github.com/FrickeFresh/awesome 

しかし、それはあなたが心配する必要があるものではありません。

ゴーはスキップして、デフォルトでファイルをテストしますが、ユーザーは-tを含めることによって、あまりにもそれらをダウンロードすることができます取得します。

特定のバージョンの依存関係を調べる場合は、いくつかの記事やツールがあります。 公式ツールは、DEPです:

https://github.com/golang/dep

+0

https://github.com/FrickeFresh/awesome - >ページが見つかりません404正しいリンクであなたの答えを編集してください – muthukumar