Управление версиями демонстраций
Примеры способов создания версий проектов .NET Core как с непрерывным развертыванием (CD), так и без него.
Если вы клонируете этот сайт и запустите его локально в режимах отладки и выпуска, вы увидите разные результаты. Вы можете посетить действующую версию по адресу https://versioningdemos.azurewebsites.net/, она прошла через мой Git и VSTS для создания информации о версии.
Вы заметите, что Microsoft использует разные стратегии управления версиями в своих собственных библиотеках .Net, предположительно принадлежащие разным командам.
В сборке .NET Core обычно упоминаются три версии.
- Версия файла — используется, чтобы увидеть, какая DLL позже.
- Он имеет шаблон xybr, который обычно считается Major.Minor.Build.Revision.
- Версия продукта — также известная как информационная версия в сборке. Это текстовая версия произвольной формы, используемая в описательных целях.
- В настоящее время его формат имеет тенденцию следовать шаблону семантического управления версиями (предложенному GitHub).
- xyp-buildinfo Major.Minor.Patch[-метаданные]
- Подробнее можно прочитать на сайте semver.org.
- Версия сборки - версия сборки.
Обычный метод получения информации о версии, который вы видите, работает только в некоторых случаях использования и разваливается при помещении в библиотеку.
Примеры проектов версий
Во всех этих проектах используются файлы .vbproj (также могут быть .csproj), а не предыдущие методы, в которых использовались файлы AssemblyInfo.cs или project.json.
Ничего не установлено – по умолчанию
Установка значения — вручную
Использование пользовательского интерфейса Visual Studio (свойства проекта/пакета)
- Даже если вы не используете это для установки информации, будут отображаться рассчитанные значения.
- Будьте осторожны, чтобы случайно не переопределить значения, рассчитанные где-то еще.
- Редактирование
.csproj
Установка всех значений — Manual.AllDifferent
- Использование пользовательского интерфейса Visual Studio
- Редактирование
.csproj
Просто используйте VersionPrefix – VersionPrefix
Суффикс версии — Суффикс версии
БилдРевизион - БилдРевизион
- реплицировать подстановочные знаки сборки и ревизии, реализуя логику шаблона версии roslyn
- Использует вычисления в файле csproj.
BuildDateTime — BuildDateTime
- использовал x.YYYY.MDD.HHMM для создания автоматических значений
Сборка Visual Studio Team Services — VSTS
- Добавьте настроенный BUILDNUMBER из VSTS в VersionSuffix.
Сборка Visual Studio Team Services с веткой Git — VSTS.WithGit
- Также добавьте ветку Git в суффикс версии.
Помощники тегов
При использовании Taghelpers возникает несколько ошибок.
- Страницы в конечном итоге помещаются в разные сборки, чем вы могли ожидать.
- Запуск в режиме отладки или выпуска может давать разные значения и создавать сборки.
- Размещение TagHelper во внешней библиотеке меняет результат текущей запущенной сборки.