GitVersionInfo.cs 762 B

123456789101112131415161718192021222324
  1. using System.Reflection;
  2. namespace WebTemplate;
  3. public record GitVersionInfo : IVersionInfo
  4. {
  5. public string AssemblyName { get; }
  6. public string AssemblyVersion { get; }
  7. public string Version { get; }
  8. public string Commit { get; }
  9. public string Branch { get; }
  10. public bool IsDirty { get; }
  11. public GitVersionInfo()
  12. {
  13. var entryAssembly = Assembly.GetEntryAssembly();
  14. AssemblyName = entryAssembly?.GetName().Name ?? "<unknown>";
  15. AssemblyVersion = entryAssembly?.GetName().Version?.ToString() ?? "<unknown>";
  16. Version = ThisAssembly.Git.Tag;
  17. Commit = ThisAssembly.Git.Sha;
  18. Branch = ThisAssembly.Git.Branch;
  19. IsDirty = ThisAssembly.Git.IsDirty;
  20. }
  21. }