VS2013には、.tfignore
を使用しないように指示した場合でも、NuGetが保留中の変更としてパッケージを追加するというバグがありました。 回避策 がありましたが、VS2015/NuGet3では機能せず、NuGetは古いトリックに戻りました。 「Nu」の回避策はありますか? :-)
Microsoft Connectアイテム: NuGetは.tfignoreにもかかわらずパッケージをTFSに追加します
これは、NuGet Visual Studio 2015 Extensionの バージョン3.2 RC で修正されているようです。このバージョンへの更新は、少なくとも私にとってはうまくいきました。
この問題に関する議論は here にあります。NuGet3.1から3.2 RCに更新することをお勧めします。
更新
この修正を含む拡張機能のバージョン3.2がリリースされました( here が見つかりました)。
明確化
これを機能させるには、次の2つが必要です。
disableSourceControlIntegration
設定を含むnuget.config
ファイルdisableSourceControlIntegration
設定を尊重するNuGet Visual Studio 2015 Extensionのバージョン(3.2以降のバージョンは動作するはずです)docs に示されているとおり:
NuGetは最初にデフォルトの場所からNuGet.configをロードし、次に現在のドライブのルートから現在のディレクトリで終わるNuGet.configという名前のファイルをロードします。
つまり、ユーザープロファイルの デフォルトの構成ファイル (<solution><add key="disableSourceControlIntegration" value="true" /></solution>
にある)またはソリューションディレクトリのNuGet構成ファイルに%APPDATA%\NuGet\NuGet.Config
を指定できます。たとえば、\MySolution\.NuGet\NuGet.config
。
%AppData%\NuGet\NuGet.Config
ファイルで、</configuration>
XMLタグの直前に以下を追加します...
<config>
<add key="repositoryPath" value="C:\NuGetPackages" />
</config>
<solution>
<add key="disableSourceControlIntegration" value="true" />
</solution>
...任意のパスを指定できます-重要なことは、TFSワークスペースの外側に配置することです!
今、あなたは再びそのようなことを心配する必要はありません。ソリューションフォルダーにはパッケージが含まれなくなります。すべてのソリューションは、デフォルトで代わりにカスタムパッケージの場所を使用します。
注-これはユーザーごとに機能します。
これまで、私は解決策ごとに1コンフィグ(\.nuget\NuGet.Config
)の方法で同じことをしてきました。洞察に@dsghiを感謝します!
ソリューションフォルダーに.nuget
フォルダーが含まれていないことを確認してください(古い方法)。フォルダーがソリューションに含まれておらず、ファイルシステムにのみ含まれている場合でも、すべてをオーバーライドします!
私は同じ問題を抱えていますが、実際の解決策はまだ見つかりません。
私がこれまでに見つけた唯一の回避策は次のとおりです。