Как откат регистрации TFS?

Я хотел бы отменить изменения, которые я сделал недавно в TFS. В Subversion это было довольно просто. Однако, это кажется невероятной головной болью в TFS:

Вариант 1: Получить предыдущую версию

  • Вручную получить предварительную версию каждого файла
  • Отредактируйте для редактирования
  • Сбой - проверка (в VS2008) заставляет меня получить последнюю версию

Вариант 2: получить электроинструменты TFS

  • Загрузите Power Foundation Power Tools
  • Откат команды отката из строки cmd
  • Сбой - он не будет работать, если есть другие ожидающие изменения

Вариант 3: Вручную отменить изменения

  • вручную отменить мои изменения, а затем зафиксировать новый набор изменений

Вопрос

Как откат к предыдущему набору изменений в TFS?

Ответ 1

  • Загрузите и установите Team Foundation Power Tools.
  • Откройте командную строку Visual Studio
  • Перейдите в каталог файловой системы, к которому привязана TFS. Если вы этого не сделаете, вы получите сообщение об ошибке "Невозможно определить рабочую область" при попытке отката.
  • Убедитесь, что все остальное проверено или отложено
  • запустите tfpt rollback, чтобы открыть интерфейс.
  • Выберите список изменений, которые вы хотите отменить.
  • Проверьте новые версии файлов, которые вы отскакивали.

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

Если вам нужна помощь, чтобы выяснить, какие изменения будут отменены, я найду инструмент обзора кода в бесплатном Team Foundation Side Kicks, очень полезно.

Ответ 2

Ваше решение №1 будет работать: 1. вручную получить предыдущую версию каждого файла

  1. проверить для редактирования

  2. Проверьте файл и проигнорируйте изменения сервера при появлении запроса.

Причина, по которой вам это не удалось, заключается в том, что вы должны иметь Включена опция "Получить последнюю версию элемента при проверке". Отключите этот параметр, перейдя в Инструменты... Параметры... Исходный контроль... Visual Studio Tema Foundation Server и снятие флажка "Получить последнюю версию элемента при проверке"

Приветствия

Ответ 3

Откат был перенесен из tfpt.exe в tf.exe, инструмент управления версиями Team Foundation.

TF - Team Foundation Version Control Tool, Version 10.0.30319.1
Copyright (c) Microsoft Corporation.  All rights reserved.

Rolls back the changes in a single or a range of changesets:
tf rollback /changeset:changesetfrom~changesetto [itemspec] [/recursive]
            [/lock:none|checkin|checkout] [/version:versionspec]
            [/keepmergehistory] [/noprompt] [/login:username,[password]]

tf rollback /toversion:versionspec itemspec [/recursive]
            [/lock:none|checkin|checkout] [/version:versionspec]
            [/keepmergehistory] [/noprompt] [/login:username,[password]]

Ответ 4

Другой способ сделать вашу работу с параметром 1 - это изменить порядок шагов:

  • Отъезд элементов
  • Получить определенную версию для старой версии
  • Зайти (игнорирование диалогового окна "Предупреждающий сервер версии более новое" ) ИЛИ в разделе "конфликты" диалогового окна "Ожидающие изменения" разрешить конфликты, сохранив локальную версию.

Это будет работать, даже если у вас установлен Get Latest On Checkout.

Ответ 5

У вас есть два варианта отката (возврат) набора изменений в TFS 2010 Version Control. Первый вариант - использование пользовательского интерфейса (если у вас установлена ​​последняя версия TFS 2010 Power Tools).

Rollback Changeset in UI for TFS 2010

Другой вариант - использовать приложение командной строки для управления версиями TFS 2010:

tf.exe rollback

У меня есть информация обо всех подходах к моему сообщению в блоге: http://www.edsquared.com/2010/02/02/Rollback+Or+Undo+A+Changeset+In+TFS+2010+Version+Control.aspx

Ответ 6

Для справки, если вы используете TFS 2010, здесь ссылка на Откат команды (Team Foundation Version Control).

Чтобы откат определенного набора изменений, перейдите в Командная строка Visual Studio (2010), перейдите в каталог рабочей области TFS и введите команду:

tf rollback /changeset:C12345

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

Ответ 8

Отсутствие опции отката - это фактически функция TFS;)

Для отката изменений:

  • Ознакомьтесь с любой конкретной версией изменений, которые вы хотите.
  • Изменить- > Выбрать все- > Скопировать текст в файл
  • Оформить любую версию файла на сервере
  • Вставьте файл и зарегистрируйтесь.

И теперь сохраняются все ваши промежуточные изменения перед откатом! Какая замечательная функция!

Ответ 9

Если вы сделали 1 регистрацию, и вы просто хотите ее отменить, у нее есть связанный с ней набор изменений #. Сделайте историю в соответствующей папке, чтобы увидеть плохой набор изменений. Откройте его, чтобы просмотреть детали (все файлы изменены и т.д.).

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

Где я могу уменьшить TFS на этом сайте?

Ответ 10

Я думаю, что Team Foundation Power Tools - это путь. Если есть ожидающие изменения, вы можете переместить их на полку, затем отменить или проверить все ожидающие изменения перед запуском команды отката. Подробнее см. http://www.codeplex.com/VSTSGuidance/Wiki/View.aspx?title=How%20to%20undo%20a%20check-in&referringTitle=Source%20Control%20Practices%20at%20a%20Glance.

Ответ 11

Ben Scheirman - диалоговое окно "Сведения о внесении изменений" не имеет функции отката.

Ответ 12

Другой вариант TFSPlus. Эта добавка Visual Studio добавляет (в том числе) команду "Получить эту версию" в окно истории. Если вы проверили файл, он заменит его на эту версию. Если после этого вы сделаете чек, вы действительно сделаете откат к этой версии.

Он работает только с отдельными файлами, а не с полными наборами изменений.

Ответ 14

Получить Конкретную версию

В раскрывающемся списке Тип выберите "Тип" как "Изменения"

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

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

Отъезд

Заезд

Ответ 15

Ни одно из этих решений не сработало для меня. Решение Dave Roberts было ближе всего к тому, что я действительно работал. У меня нет доступа к последней версии элемента при проверке, но, похоже, это политика сервера.

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

Я собирался сравнить с конкретной версией и скопировать весь файл, а затем просто вставить его поверх старой.

Тем не менее должен быть более простой способ сделать это!

Ответ 16

Решение выше для TFS2008. TFS2010 имеет встроенную функцию отката. см. эту статью для деталей.

Ответ 17

Установите последнюю версию TFS Power Tools (август 2011 г.), и вы можете просто щелкнуть правой кнопкой мыши по набору изменений и выбрать "Откат целого набора изменений". Это не намного легче, чем это.

Он доступен здесь: http://visualstudiogallery.msdn.microsoft.com/c255a1e4-04ba-4f68-8f4e-cd473d6b971f

На подсказке Team Explorer на странице выше намечено:

Новое в этом выпуске - это способность [..] легко откат изменений в управлении версиями.