7

バージョン番号が変更されていない場合でも、更新を有効にするにはどうすればよいですか?

Nuget パッケージを開発しています。私たちは初期段階のベータ版/テスト段階にあります。テストが完了するまでバージョンを変更しませんが、変更したパッケージをテスト目的で渡したいと考えています。しかし、Package Manager は変更を認識せず、更新を許可します。バージョンが変更されていない限り、再インストールできますが、テスターが更新できるようにしたいと考えています。

バージョン番号が同じままで、これを行うにはどうすればよいですか?

4

2 に答える 2

1

私は同じ問題に直面したばかりで、検索でここにたどり着きました。

通常、このAssemblyInformationalVersionフィールドを使用してプレリリースのサフィックスを指定します。たとえば、次のようになります。

  • 0.9.5-beta00001
  • 0.9.5-beta00002
  • ...

NuGet パッケージ マネージャーでプレリリース バージョンを有効にすると、これらのパッケージも提供されます。接尾辞式が「増加」している限り、パッケージ マネージャーは後続のプレリリース バージョンを更新として扱います。したがって、よく考えられた接尾辞から始めることが重要です。たとえば、次のようにするとうまくいきbeta9ませbeta10beta9

サフィックスが削除されるとすぐに、パッケージはリリースとして扱われ、同じバージョンのすべてのプレリリース パッケージへの更新として提供されます。

しかし、人生が賭けに出ていると、リリースされたばかりのライブラリに小さなバグや改善点が見つかることがあります。リリースされたばかりのライブラリがどこにも使用されていない場合でも、そのようなマイクロチェンジのためにバージョン番号を再度上げるのは常に本当に面倒です。なぜなら、そのリリースはほんの数分前だからです。

この場合、Simon Storr によって概説された手順を試しましたが、十分ではありませんでした。ソリューションのパッケージ ディレクトリに古いバージョンがありました。そこから手動で削除した後、現在のパッケージをどこかから取得しました。このステップで現在のパッケージをダウンロードしたのか、ソリューションの親ディレクトリにあるよりグローバルなパッケージ ディレクトリから取得したのかはわかりません。

複数のパッケージ ディレクトリがあることに注意してください。プロジェクトの Visual Studio 参照ビューの NuGet パッケージのプロパティには、グローバル パッケージ ディレクトリのみが表示されました。ただし、新しいバージョンは既にありましたが (ILSpy でこれを確認)、古いバージョンは bin ディレクトリにコピーされていました。

于 2019-03-14T13:47:49.863 に答える