Как я могу запретить GitVersion включать хеш коммита в номер версии?
Я только начал использовать GitVersion в TFS 2018.3 (VSTS, Azure DevOps) и действительно пробовал легкий вариант. Я использую задачу GitVersion TFS Marketplace прямо из коробки. Я пометил основную ветку 1.1.0.0 и запустил сборку.
Журнал сборки показывает:
2018-10-25T15:39:53.1843138Z INFO [25.10.18 17:39:53:08] Обновление файлов информации о сборке 2018-10-25T15:39:53.1843138Z INFO [25.10.18 17:39:53:18] Найдено 42 файла 2018-10-25T15:39:53.3123172Z [раздел] Запуск асинхронной команды: обновление номера сборки 2018-10-25T15: 39: 53.3123172Z Обновление номера сборки до версии 1.2.0-alpha.354-20181025.1 для сборки 1107
От этого я бы ожидал версию 1.2.0-alpha.354-20181025.1
но результирующая версия в AssemblyInformationalVersion:
<Assembly: AssemblyInformationalVersion("1.2.0-alpha.354+Branch.develop.Sha.1b44044f1e3324182b9e1f37958b6a4942731e59")>
или же
<Assembly: AssemblyInformationalVersion("1.2.0-some_branch_name.1+366.Branch.feature/some_branch_name.Sha.1b44044f1e3324182b9e1f37958b6a4942731e59")>
Есть ли способ предотвратить отображение Branch.develop.Sha.1b...
?
Это правильный способ использовать эту задачу?
1 ответ
Чтобы настроить параметры GitVersion по умолчанию, вы должны добавить файл GitVersion.yml в корень вашего хранилища. Например с этим содержанием:
mode: ContinuousDeployment
assembly-informational-format: '{SemVer}-{CommitDate}'
branches: {}
ignore:
sha: []
Это приведет к строке версии 1.2.0-alpha.354-2018-10-25
,
Чтобы проверить, работает ли ваш файл GitVersion.yml правильно, вы можете открыть командную строку и выполнить GitVersion.exe /updateassemblyinfo
, Это работает, только если вы установили GitVersion локально, например, с choco install GitVersion.Portable
, Смотрите также документы GitVersion. Однако выполнение GitVersion.exe /updateassemblyinfo
Команда предоставит вам полный список переменных, доступных для включения в файл GitVersion.yml.