сначала немного фона ...
Я настраиваю систему нумерации версий для нашего проекта, которая в настоящее время имеет только ветку разработки, но сейчас мы движемся к нашему первому развертыванию. Мы используем TFS и используем ночные сборки в нашей ветке dev.
Вероятно, мы пойдем с этим так: когда мы готовимся к выпуску, мы снимаем ветку с 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%, что спросить. Любая помощь приветствуется.