私が知りたいのですが
C#またはVB.NETプロジェクトでは、ソース管理リポジトリ(Gitなど)にPACKAGEフォルダー(nupkgファイルおよびその他のコンテンツを含むプロジェクトのルートに作成されるナゲットパッケージフォルダー)を含める必要があります。
私が知りたいのですが
C#またはVB.NETプロジェクトでは、ソース管理リポジトリ(Gitなど)にPACKAGEフォルダー(nupkgファイルおよびその他のコンテンツを含むプロジェクトのルートに作成されるナゲットパッケージフォルダー)を含める必要があります。
回答:
多くの時間が経過し、NuGetが変更されたため、ここで新しい答えがあります。
NuGetは、ソース構造内にパッケージフォルダーを作成しなくなりました。代わりに、ユーザーディレクトリに(%HOME%\.nuget\packages
具体的には)ダウンロードしたすべてのパッケージを配置し、プロジェクトはこれらを参照するだけです。
ですから、最近の単純な答えはノーです。そうすべきではありません。消失する必要があるパッケージが心配な場合は、個別にバックアップするローカルNuGetミラーを作成する必要があります。
場合によります。
チェックアウトバートバン隠元Schenauの答えを、それを無視することは可能ですかどうかを判断するためpackages
に、すべてのフォルダを。
基本的に、はい、NuGetはpackages
フォルダーを無視できるように設計されており、NuGetが存在しない場合はインターネットからすべてを取得します。
しかし、あなたはそれを無視すべきですか?私は言う:それは依存します。
IMOは、「パッケージリポジトリが利用できない場合に作業を続行できますか」(一時的または永続的に)
私の個人的なOSSプロジェクトでpackages
は、すべてのフォルダーでフォルダーが無視されます。
nuget.orgがオフラインになったら、私はただ待って別の日を続けます。
しかし、それは職場では異なるものです。
確かに、おそらくいくつかのマシンにローカルにパッケージが残っていますが、ビルドサーバーがnuget.orgに到達できないため、ビルドが中断しているときに面倒に値するスペースを節約していますか?
スペースが安価で、面倒なことはしたくないと判断したため、packages
フォルダーをソース管理にコミットしています。
ソース管理リポジトリーに入る基本的なルールは、プロジェクトをビルド、テスト、デプロイ、実行する必要があり、既にリポジトリーに存在するアイテムから生成できないプロジェクトに関連するすべてをそこに保存することです。
言い換えると、能力に影響を与えずにPACKAGEフォルダーとその内容を捨てることができれば、プロジェクトでの作業を続けることができます(ビルドに時間がかかる場合がありますが、自分で何かを探してインストールする必要はありません)リポジトリから安全に除外されます。
フォルダーに、ダウンロードに時間がかかったり、使用できなくなったりするサードパーティのパッケージが含まれている場合は、とにかくそれらをリポジトリに追加する理由になる可能性があります。