Как отменить проверку другого пользователя в TFS?

95

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

Как отменить оформление заказа другим пользователем?

Бретт Роджерс
источник

Ответы:

144

Для этого есть как минимум 2 разных способа:

Командная строка

В Team Explorer входит служебная программа командной строки Tf.exe. Найдите здесь документацию . Доступ к нему можно получить, запустив окно командной строки Visual Studio. Синтаксис команды:

tf undo [/workspace:workspacename[;workspaceowner]] 
[/server:servername] [/recursive] itemspec [/noprompt]

За один файл

tf undo /workspace:workspacename;workspaceowner $/projectname/filename.cs

GUI

Второй - через графический интерфейс, но не входит в стандартную комплектацию - вам необходимо установить TFS Power Tools . Смотрите здесь для подробностей о том , как использовать этот метод.

Имейте в виду, что для любого метода вам потребуются соответствующие права. Разрешения называются «Отменить изменения других пользователей» и «Разблокировать изменения других пользователей». Эти разрешения можно просмотреть:

  1. Щелкните правой кнопкой мыши нужный проект, папку или файл в проводнике управления версиями.
  2. Выбрать свойства
  3. Выберите вкладку Безопасность
  4. Выберите подходящего пользователя или группу в разделе «Пользователи и группы» вверху.
  5. Просмотрите раздел "Разрешения для [пользователя / группы]:" внизу

Удаление рабочего пространства

tf workspace /delete WorkspaceName;User
             /server:http://server:8080/tfs/MyTeamCollection 
Бретт Роджерс
источник
Для меня команда tf undo / workspace: mydesk * .sdf сообщает «Нет ожидающих изменений», но не отменяет извлечение (блокировку)
dumbledad
Я забыл путь к серверу TFS до моего * .sdf itemspec, я предполагал, что он будет работать из текущего каталога. Командная строка, которую вы даете, теперь работает для меня.
Дамблдад
1
Убедитесь, что вы заключили пути в кавычки с пробелами, иначе вы можете получить сообщение вроде: «Не найдено ожидающих изменений для $ / xxx»
PeterX
Как мне найти имя рабочего пространства? Я вижу, что могу запустить: tf workspaces / owner: [other user] / server: [server], я получаю список из четырех рабочих пространств, которые есть у пользователя, но как мне узнать, какое рабочее пространство это для файла?
PeterX
1
PeterX, вы можете увидеть рабочую область, перейдя к файлу в обозревателе решений Visual Studio, щелкните правой кнопкой мыши заблокированный файл и выберите «Свойства», затем на вкладке «Состояние» у вас есть информация о рабочей области и пользователе, заблокировавшем файл
Данте,
36

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

Марек Карбарз
источник
5
Он находится под "Напарником статуса". Поиск, выбор файлов, отмена.
Wolf5
Если пользователь покинул компанию, вы должны знать имя пользователя Active Directory (которое не всегда совпадает с именем и / или фамилией пользователя). Моя компания назначает пронумерованные имена пользователей, поэтому мне пришлось искать вышедшего на пенсию пользователя, прежде чем я смогу найти его в VS или в Status TFS Sidekick.
Zephan Schroeder
Это сработало потрясающе. намного проще, чем пытаться определить имена рабочих пространств и тому подобное с помощью инструмента командной строки.
Bo Flexson
28

У меня просто была эта проблема, и я нашел более простой способ очистить старые рабочие места.

  1. В Visual Studio откройте обозреватель управления исходным кодом .

  2. В раскрывающемся списке "Рабочая область" выберите " Рабочие области ... "

  3. Появится диалоговое окно, показывающее рабочие области на вашем текущем ПК. Выберите " Показать удаленные рабочие области ".

  4. Теперь вы также увидите рабочие области со своего предыдущего ПК (если они принадлежат той же учетной записи). Выберите старую рабочую область (-а) и нажмите « Удалить ». Это должно удалить старую рабочую область из TFS вместе со всеми сохраняющимися проверками.

Я уверен, что Арне нашел решение, но я надеюсь, что это поможет другим, кто ищет эту проблему в Google.

Саид Мохаммад Хашем
источник
7
Это хорошо работает, если вы являетесь владельцем рабочего пространства, особенно для очистки текущего списка рабочих пространств. Не очень хорошо для удаления рабочих пространств других пользователей или блокировок оформления заказа :-).
Zephan Schroeder
Согласовано. Это хорошо подходит для удаления ваших собственных блокировок кассы с другого ПК.
Крис
1
Верно, но вопрос относится к разблокировке файлов, которые были выданы ДРУГОМ пользователю.
BrainSlugs83
9

Выберите свой файл в TFS sidekick, затем над списком у вас появится «Отменить ожидающее изменение». Щелкните по нему, и изменение будет отменено :) Значок аналогичен значку «Отменить» в MS Word. Получите помощники TFS с http://www.attrice.info/cm/tfs/index.htm

Марьям
источник
Самый простой в использовании инструмент. Действительно помог мне отменить изменение на уровне решения, которое бывший сотрудник проверил
Вишну Рат