Вручную увеличить TFS BuildId? - PullRequest
2 голосов
/ 28 февраля 2011

ОБНОВЛЕНО весь вопрос, чтобы прояснить ситуацию.

Программное обеспечение

Team Foundation Server 2010.

Фон

Некоторое время назад мы перенесли нашу коллекцию командных проектов (= TPC), используя инструменты интеграции Microsoft Team Foundation Server, в новый TPC. Мы также хотели сохранить наши определения сборки, поэтому мы создали новый контроллер сборки для нового TPC, а затем вручную перенесли определения сборки, поскольку инструмент не поддерживал эту функциональность. Как только мы воссоздали контроллер сборки, BuildID был сброшен. Это поведение понятно, поскольку каждый TPC имеет свою собственную базу данных, в которой создаются уникальные идентификаторы BuildID.

Проблема в том, что наша схема управления версиями сборки использует BuildID, чтобы убедиться, что мы можем проследить сборку до соответствующей сборки из TFS. Вот почему продолжение старых идентификаторов BuildID (или ручная настройка следующего идентификатора BuildID) необходимо.

Вопрос

Вопрос в том, есть ли параметр, с помощью которого мы можем определить диапазон BuildID, чтобы не было совпадений с предыдущими сборками, созданными устаревшим контроллером сборки. Например, если в старом TPC последней сборкой было «499», то мы хотели бы установить диапазон BuildID в новом TPC равным [500-99999] ".

1 Ответ

3 голосов
/ 03 марта 2011

Есть два способа решения этой проблемы. Простейшим было бы изменить рабочий процесс сборки и добавить смещение к идентификатору сборки. Вы можете выставить смещение в качестве аргумента и добавить его к метаданным, чтобы его можно было изменить извне или сделать его фиксированной константой внутри XAML.

Более навязчивым решением было бы изменение базы данных напрямую. В базе данных коллекции проектов (например, Tfs_DefaultCollection) перейдите к таблице tbl_Build. Первичным ключом таблицы является BuildId. Это поле Identity . Все, что вам нужно сделать, это изменить seed на новое значение (например, 500); Следующая сборка будет иметь измененный идентификатор сборки.

Я пробовал это в своей собственной базе данных, без видимых проблем. Я предлагаю вам сделать резервную копию вашего TPC, прежде чем пытаться его использовать, просто чтобы быть в безопасности.

И предлагаем вам просто изменить сборку, чтобы сместить идентификатор сборки.

Надеюсь, это поможет,

Ассаф.

...