Могу ли я увидеть историю файлов TFS с метками?

В настоящее время мы используем в работе Visual Source Safe и Team Foundation Server (VSS для старых проектов, TFS для текущих или новых проектов).

Мы всегда использовали метки в системе контроля версий для каждой сборки. В VSS, если вы выбрали просмотр истории файла, вы можете включить метки. В TFS я не могу найти возможность включить ярлыки в окно истории.

Поскольку один из наиболее частых вопросов, которые мне задают служба поддержки или руководство, - «Какую версию мы исправили / добавили / удалили / изменили xxxx?», Я всегда полагался на наши метки сборки, отображаемые в истории.

Могу ли я сделать так, чтобы метки отображались в истории файлов?


person Jack Bolding    schedule 30.09.2008    source источник
comment
Посмотрите на помощника по ярлыку attrice, упомянутого в одном из ответов ниже. Это великолепно.   -  person Anonymous Type    schedule 28.10.2011


Ответы (6)


В версии TFS 2008 вы не видите меток в стандартной истории файлов и папок. Если вы действительно хотите знать почему - см. Сообщение в блоге Брайана Гарри "Почему Ярлыки TFS не похожи на ярлыки VSS ".

Чтобы найти метки в Visual Studio, выберите «Файл», «Контроль версий», «Метка», «Найти метку» ... Отсюда вы можете увидеть, какие версии файлов были включены в эту метку.

Команда определенно слышала, что это не идеально, и следующая версия TFS (Team Foundation Server 2010, кодовое название «Rosario») будет включать улучшения в представление «История», чтобы упростить поиск ярлыков - см. http://go.microsoft.com/?linkid=7807943, чтобы ознакомиться со спецификацией улучшений в представлении журнала в TFS 2010.

Кстати, я фактически перешел на нумерацию сборок на основе набора изменений с TFS, что делает маркировку менее необходимой. Подробнее см. http://www.woodwardweb.com/vsts/changeset_based.html. .

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

Мартин.

person Martin Woodward    schedule 30.09.2008
comment
Я знаю, как найти метки в Visual Studio, но сопоставление файлов «Метка -› »очень бесполезно в ситуации, которую я описал выше. - person Jack Bolding; 01.10.2008
comment
Я прочитал сообщение Брайана Гарри, указанное выше, и я могу понять отсутствие меток в истории папок, но для одного файла метка должна быть до или после версии файла. Это должно быть возможно. Но дело не в силовых игрушках ... - person Jack Bolding; 01.10.2008
comment
Если поиска на уровне файла достаточно, ознакомьтесь с моим ответом. - person Richard Berg; 16.09.2009

Именно эта проблема нас убивала.

Лучшее решение, которое я нашел, - использование стороннего инструмента под названием Team Foundation SideKicks, доступного бесплатно здесь http://www.attrice.info/cm/tfs/.

Под «History Sidekick» есть вкладка с ярлыком. Вы можете выделить любую папку или файл, и он покажет вам каждую метку, которая была добавлена ​​к этой папке или файлу, и в каком наборе изменений. К сожалению, вы не можете полностью просмотреть историю папки или файла с включенными метками.

Под «Label Sidekick» вы можете выделить любую конкретную метку, на которой вы можете узнать, какие папки / файлы и наборы изменений находятся в метке. Эта функциональность почти такая же, как и в Visual Studio, и не так полезна.

Одно предостережение - необходимость в сервере TFS 2008 или более поздней версии. Использование этого инструмента с TFS server 2005 мучительно медленное и в основном непригодное для использования.

-ephi

person Community    schedule 15.09.2009
comment
Да, я все время использую его для поиска лейблов, это здорово. - person Anonymous Type; 28.10.2011

[из-за сложности меток в стиле TFS это довольно сложная проблема применительно к папкам; основываясь на приведенном выше комментарии, я предполагаю, что достаточно поиска меток в файле]

К сожалению, это один из очень немногих крайних случаев клиентского API TFS, который нигде не отображается в tf.exe или VS2008. Вам нужно будет вызвать API напрямую. См. http://msdn.microsoft.com/en-us/library/bb138967.aspx - параметр versionFilterItem выполняет то, что вы ищете.

person Richard Berg    schedule 16.09.2009

TFS 2010 имеет очень полезное представление «Ярлыки» (а не «Наборы изменений») в истории любой ветки. К сожалению, он показывает только метки в выбранной вами ветке, а не метки во всех дочерних ветках / папках.

person Patrick Szalapski    schedule 04.02.2011

Я начал экспериментировать с попыткой создать свой собственный SQL для этого и запустить его непосредственно в базе данных TFS. Этот SQL был запущен для TFS 2008. Этот небольшой фрагмент покажет ВСЕ метки и наборы изменений для ВСЕХ ветвей, упорядоченных с самой последней созданной веткой / измененной меткой первой. Следующим шагом в разработке этого будет каким-то образом пройти по ревизиям и меткам, чтобы вернуть только те области, которые мне интересны (например, «Основная» или какая-то конкретная ветвь). Я предполагаю, что если бы я создал SQL, который бы делал все это, он был бы медленным и не имел бы полного графического интерфейса, который я хотел бы погрузиться в историю для конкретного файла, увидеть ярлыки с этим и т. Д. Вздох.

select DisplayName, cs.CreationDate, Comment, 'CheckIn' 
from TfsVersionControl.dbo.tbl_Identity i, TfsVersionControl.dbo.tbl_ChangeSet cs 
where cs.ownerid = i.IdentityId
union
select DisplayName, LastModified, Comment, 'Label' 
from TfsVersionControl.dbo.tbl_Identity i, TfsVersionControl.dbo.tbl_Label l 
where l.ownerid = i.IdentityId
order by 2 desc
person Mike Sage    schedule 25.07.2011

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

person Ryan    schedule 26.02.2010