.gitignore での Go Vendor フォルダーの処理
問題
go dep コマンドによって生成された Vendor/ フォルダーを追加するかどうか.gitignore は議論のトピックとなっています。現在、このフォルダーは無視されており、デプロイメントのたびに dep ensure が呼び出されます。
ディスカッション
vendor/ を無視するかどうかの決定は、特定のプロジェクト要件と開発ニーズによって異なります。
vendor/ を無視する理由:
- github/gitignore の Go.gitignore テンプレートには、vendor/ が含まれていません。
- ベンダーのコンテンツのバージョン管理により、依存関係がロックされますライブラリの更新に直面すると、潜在的に望ましくない可能性があります。
- ベンダー ツールは時間の経過とともに進化する可能性があり (例: dep、vgo、モジュールへ)、追跡された依存関係が無効になる可能性があります。
ベンダー/:
- バージョン管理の依存関係を変更すると、変更の追跡や競合の解決に役立ちます。
- gitignore.io/api/go ではベンダーを無視することをお勧めします。 /.
- チーム メンバーが異なるローカル環境を持っている場合、ベンダー フォルダーは依存関係バージョンの一貫性を確保できます。
推奨されるアプローチ
特に指定がない場合シナリオ:
- github/gitignore のテンプレートに従って、vendor/ を無視することを検討してください。
特定のニーズがある場合:
- 仮想化またはコンテナを使用して開発環境を標準化し、ローカルの依存関係管理の必要性を最小限に抑えます。
- ベンダー/外部のバージョン管理を維持しながら、ローカル生成用のスクリプトを提供することにより、ハイブリッド アプローチを採用します。
- プライベート リポジトリを使用してベンダーの依存関係を管理し、開発者全体で一貫した使用を保証することを検討してください。
- Go モジュールの使用を検討してください。これにより、正確な依存関係のバージョニングが可能になり、ベンダーの必要性がなくなる可能性があります。
以上がベンダーにするか否か: `.gitignore` 内の `vendor/` フォルダーを無視する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。