ここでは、https://github.com/kubernetes/apiserverのように.goファイルがpkgフォルダにコミットされていることがよくありますが、それは3rdparty依存関係のベンダーフォルダを使用するか、自分のコードをsrcディレクトリにコミットするのか?pkgフォルダに.goファイルを置く必要性を理解していますか?
-2
A
答えて
0
詳細をご確認ください。
あなたがリンクしたリポジトリの
pkg
フォルダは、作成したパッケージを置く場所です。理由?彼らはどこかに置く必要があります、彼らはpkg
を選んだ。vendor
フォルダーを使用すると、使用しているサードパーティーパッケージに変更を加えたい場合、プログラムを不安定にする可能性があります。その場合、サードパーティーパッケージを「ベンダー」にします。明らかな理由から、あなた自身のパッケージをvendor
フォルダに入れないでください。どれが
src
?$GOPATH/src
?あなたはそれをすることができます!おそらく、私はそれをテストしていない。その場合は1つのプロジェクトしか作成できません。それはあなたがそこに配置したプロジェクトです。
1
pkg
フォルダの下に、あなたのプロジェクトのファイルを持っている必要はありません。プロジェクト内に最初にpkg
というフォルダを持つ必要はありません。
pkg
"予約済み"フォルダ名ではありません。少なくともプロジェクトのコンテキスト内ではありません。一方、Goコンパイラにとっては特別な意味を持ち、別のプロジェクトの一部として書かれたコードを保持するように意図されている。サードパーティのパッケージしたがって、リンクされたプロジェクトでは、pkg
のコードをvendor
に移動することは意味がありません。
kubernetesや他のプロジェクトがpkg
を使用することに決めた理由を知りたい場合は、それらのプロジェクトのコミュニケーションチャネル(メーリングリスト、irc、ソーシャルメディアなど)を調べることをお勧めします。
関連する問題
- 1. Firebaseセキュリティルールの必要性の理解
- 2. Goで静的ファイルを処理するときにhttp.StripPrefixが必要ですか?
- 3. 強いパラメータの必要性を理解する - レール
- 4. なぜJDBCドライバをTOMCAT_HOME/libフォルダに置く必要がありますか?
- 5. バッチ:ファイルをtxtファイルからフォルダにコピーし、新しいファイルにdiffrencesを置く
- 6. Linuxのglibにはpkg-configが必要で、pkg-configにはglibが必要ですか?
- 7. Android密度の独立性を正しく理解していますか?
- 8. クラスが必要であり、理解しています
- 9. Box2D。どのくらいの力が必要であるかを理解しようとしています
- 10. オブザーバーデザインパターン - これがうまくいかない理由を理解するのに助けが必要です
- 11. Javascript - whileループがうまくいかない理由を理解するのに助けが必要
- 12. ArangoDBでのグラフ作成の必要性の理解について
- 13. 15MBのファイルをアップロードして解析し、ファイルを2回開く必要がありますか?
- 14. KotlinファイルをAndroidの別のソースディレクトリに置く必要がありますか?
- 15. GOでXML属性を解析する
- 16. ビジュアルスタジオのbin/releaseフォルダに必要なファイルとディレクトリをコピー/配置する方法
- 17. ボタンを正しく配置する方法を理解する助けが必要です
- 18. これがなぜうまくいかないのかを理解するために助けが必要
- 19. ファイル名から日付を抽出してフォルダにファイルを置きます。
- 20. Excelの参照を正しく理解していますか?
- 21. 地域情報を正しく理解していますか?
- 22. サブクエリが必要以上に多くの行を処理しています
- 23. Goのソースコードを$ GOPATH/srcに置くことは本当に必要なのですか?
- 24. Rパッケージ:pkg/Rとpkg/srcフォルダのカスタムファイル/ディレクトリ構造を使用
- 25. libvirt-goのインストール方法は? (pkg-config)
- 26. ゴルーチンの理解が必要
- 27. go-flagsでサブコマンドを理解する
- 28. サーバからjsonファイルを要求して置くには?
- 29. Jekyllに静的ファイルを置くフォルダはどれですか?
- 30. Goプログラム - パッケージなどを整理していますか?
pkgディレクトリでコミットされた.goファイルはどこにありますか?それは一般的ではない、ちょうどkubernetesソース内のディレクトリ名である。 – JimB
はい、私の質問の一部でした、kuberenetesチームがそのような名前を付ける特別な理由があるのだろうかと疑問に思っていました – abovesun