2016-10-25 16 views
1

私たちは最近、私たちのプロジェクトのすべてで使用するプロジェクトのNuGetパッケージを構築し始めました。このパッケージ/プロジェクトには、イメージのような多くのコンテンツファイルがあります。
初めてビジュアルスタジオ2015でパッケージマネージャーを使用してパッケージを別のプロジェクトにインストールすると、すべて正常に動作します。
変更されたプロジェクトをコミットして、.gitignoreに追加されたコンテンツファイルを使用してリモートリポジトリにプッシュすると、この余分なファイルはすべてリポジトリに残らないためです。
このリポジトリを別のコンピュータに複製してビルドしようとすると、Visual StudioはNuGetパッケージを復元しますが、このパッケージのコンテンツファイルはプロジェクトにコピーしません。ソリューションエクスプローラでは、これらのファイルはすべて、未読としてsee hereとして表示されます。
csprojでは実際には存在しないファイルを参照して強制的に上書きする方法はありますか?
は、私もこのNuGetリストア強制ファイルの上書き

nuget restore YourSolution.sln 

のようなコマンドラインでの復元を実行しようとしました も動作しませんでした、コンテンツファイルがコピーされません。

コンテンツファイルを取得するには、パッケージをアンインストールしてもう一度インストールするだけです。既存のファイルを上書きするかどうかを確認するメッセージが表示されます。 yesと答えると、ファイルがコピーされます。しかし、このプロンプトはリストアでは表示されません。

答えて

1

パッケージの復元はNuGetパッケージのみをダウンロードし、packagesディレクトリに展開します。参照とコンテンツファイルを自動的にプロジェクトに追加することはありません。

プロジェクトに参照とコンテンツファイルを追加するパッケージを再インストールするには、次のコマンドを使用する必要があります。

アップデート・パッケージ-reinstall

+0

ので、これを行うには他の方法は、パッケージを手動で再インストールを除き、実際には存在しませんか?私は本当に復元を使ってビジュアルスタジオでコンテンツを自動的にコピーしたいと思っています... :( – Weasy

+0

これはNuGetのパッケージを復元するためのデフォルトアクションです。この問題をGitHubに提出するのを助けます:https:// github.com/NuGet/Home/issues/3787このフィードバックのコメントを追加することができますが、NuGetチームはこの問題を真剣に扱いますが、その前に、上記のコマンドを使用してパッケージを再インストールする必要があります。 –

+0

さて、私はそれをします。ありがとう。 – Weasy

関連する問題