【C#】[.NET] [git] FileVersionInfo.ProductVersionに妙な羅列が含まれる問題

DALL·E-2023-11-22-18.26.31-Create-a-CG-style-illustration C#
DALL·E Create a CG style illustration

C#.NETのアプリケーションを開発した際にプロパティへアセンブリ情報が付加されるが、この「製品バージョン」(ProductVersion)の値が奇妙な値で出力されるようになりました。

製品バージョンをアプリケーション名(タイトルバー)に設定しているのですが、このバージョン情報にどうやらgitのコミットIDが付加されているようで、この情報は.NET 8.0でビルドを行った時、初めて現れました。

私はこのプロジェクトをgitリポジトリで管理しています。

結論から申し上げると.NET SDK 8の直近バージョンでビルドを行うとデフォルトでこのコミットIDが付加されてしまうようです。

この現象は以下の.net sdkリポジトリイシューにてその存在を確認しました。

Git commit ID included in assembly ProductVersion field when building with sdk 8 · Issue #34568 · dotnet/sdk

対策は?

恒久的な対策はそのうち公式から成されると思われます。

しかしながら現状もこの状態を回避したい場合は、プロジェクトプロパティファイル(.csproj)に以下のXMLを記載する事で非表示にできるようです。

<PropertyGroup>
  .. 省略
  <IncludeSourceRevisionInInformationalVersion>false</IncludeSourceRevisionInInformationalVersion>
</PropertyGroup>

gitのコミットIDが表示されなくなります。

もしお困りの方がおられましたら参考にされてください( `・∀・)ノ

マップエディタの開発は順調に進んでいます。
来週くらいにはバイナリファイルの出力機能とヘッダ情報の編集機能の記事を書けるかな、と思ってます。

コメント

タイトルとURLをコピーしました