сначала немного предыстории ...
Я настраиваю систему нумерации версий для нашего проекта, который в настоящее время имеет только ветку разработки, но сейчас мы движемся к нашему первому развертыванию. Мы используем TFS, и мы используем ночные сборки в нашей ветке разработки.
Мы, вероятно, собираемся поступить так: когда мы готовимся к выпуску, мы берем ответвление от dev и называем его 1.x. Это будет тестовая ветвь: мы тестируем ее, исправляем (затем снова сливаем с dev), тестируем еще раз, а затем, когда все в порядке, мы берем другую ветку из ветки 1.x и называем ее 1.0. Именно эта ветка развертывается в производственной среде. Любые исправления в производственной среде будут внесены в 1.x, протестированы, а затем будет создана новая ветка 1.1.
Моя проблема связана с тестированием ветки 1.x. Перед тестированием ветка будет заблокирована по понятным причинам. Моя проблема в том, что QA требует, чтобы раунд тестирования проводился по «номеру версии», и если тестирование не удастся, следующий раунд тестирования будет с новым «номером версии». Мы, разработчики, хотим привязать «номер версии» к выпуску, и тестирование может повторять эту версию ... так что здесь возникает конфликт.
Моя первая мысль - использовать номер сборки как момент времени, по которому тестируется код. Когда приходит время отправить новую версию для тестирования, ветвь 1.x снова блокируется, запускается сборка, и сгенерированный номер VSTS становится «условием выпуска 1 для v1.0». Сопоставление RC со сборкой мы можем сделать вручную в электронной таблице ...
... затем кто-то упоминает ярлыки и что код должен быть заблокирован, помечен и построен до тестирования. Я никогда раньше не использовал метки и только что прочитал, что сама сборка создает метку в TFS.
Я сейчас не понимаю, как лучше всего идти сюда. Достаточно ли использовать номер сборки для релиз-кандидата? Служит ли здесь ручная маркировка какой-либо цели (единственное преимущество, которое я вижу, это то, что мы можем дать ей собственное имя и описание)? Могу ли я сказать TFS НЕ создавать метку всякий раз, когда она запускает сборку, а просто делать все наши собственные метки в значимые моменты времени (например, не каждая сборка будет кандидатом на выпуск)? Если да, то создание ярлыка после каждой сборки - это НЕ плохая идея, что дает мне маркировка?
Думаю, меня смущает, где наборы изменений, номера / названия сборок и метки сочетаются друг с другом ...
Это широкий вопрос, но это один из тех, о которых я не уверен на 100%, что спрашивать. Любая помощь приветствуется.