3

私は最近、共有ドライブをセットアップして、プライベート ナゲット リポジトリとして機能するようにしました。

すべての nupkg ファイルをパッケージ ディレクトリから共有ドライブにプッシュしたいと考えています。

私はこのコマンドを理解することができました

  nuget.exe push ..\packages -source c:\testme

これでうまくいくはずですが、私のpackagesディレクトリの下では、各nupkgファイルが独自のディレクトリにあるため、再帰的に検索していないようです。これがうまくいくことを期待して -s と /s を試しましたが、

次のエラーが発生します

     File does not exist (..\packages).

VS ソリューションのパッケージ ディレクトリの下にすべての nupkg ファイルが表示されるので、それらをプライベート リポジトリにプッシュしたいと考えています。

ファイルごとに次のことを行う必要はありません。

  nuget.exe push -source c:\testme ..\packages\Antlr.Unofficial.3.4.1.0\Antlr.Unofficial.3.4.1.0.nupkg

より良い方法はありますか?

ヘルプや情報をお待ちしております。

ありがとう。

4

1 に答える 1

4

単純なバッチ ファイルを使用して、参照するすべてのパッケージを共有フォルダーにコピーします。

--- syncnuget.bat ---

for /f "usebackq tokens=*" %%n in (`dir /b /s packages\*.nupkg`) do copy "%%n" C:\Path\To\Repository /y

ソリューション ルートからこのバッチ ファイルを実行するだけです。

最近見たように、開発や継続的なビルドに影響を与える可能性のある NuGet がダウンする場合があるため、すべてのパッケージのローカル コピーを用意しておくことを常にお勧めします。

于 2014-04-10T00:43:59.573 に答える