Удалить клиентское рабочее пространство Perforce с ожидающими файлами, когда рабочее пространство уже удалено с диска? - PullRequest
15 голосов
/ 28 февраля 2011

Как удалить рабочую область с ожидающими файлами, когда эта рабочая область уже удалена с диска?

Предупреждения:

  • только для командной строки p4;не p4v gui
  • обычный пользовательский доступ;нет доступа администратора

Сценарий:

  • создать рабочую область с именем user_workspace на диске в каталоге ~/my_workspace
  • p4 редактировать файлы в рабочей областив списке ожидающих изменений по умолчанию
  • удалить рабочее пространство вручную (rm -rf ~/my_workspace)
    • рабочее пространство все еще существует на сервере с ожидающими файлами

Решениякоторые не работают:

1: Удалить рабочее пространство

Не работает, потому что в рабочем пространстве открыты файлы.

p4 client -d user_workspace

Клиент 'user_workspace 'имеет открытые файлы;используйте -f для принудительного удаления.

2: Удалить рабочее пространство с силой

Не работает, потому что не администратор.

p4 client -d -f user_workspace

Вы надеваетеУ вас нет разрешения на эту операцию.

3: Удалить ожидающий список изменений;затем удалите рабочее пространство (попробуйте 1)

p4 changes -c user_workspace -s pending

Только списки, ожидающие нумерованных списков изменений, не обрабатывает список ожидающих изменений по умолчанию.

p4 -c user_workspace -d changelist_number

Невозможно, поскольку для ожидающего списка изменений нет номера списка изменений.

4: Удалить ожидающий список изменений;затем удалите рабочее пространство (попробуйте 2)

Попытка выполнить p4-возврат к каталогу, который больше не существует, выдает странную ошибку.

p4 revert ~/my_workspace

/ home /user / my_workspace - должен ссылаться на клиент 'user_workspace'.

p4 -c user_workspace revert ~/my_workspace

/ home / user / my_workspace - должен ссылаться на клиент 'user_workspace'.

setenv P4CLIENT user_workspace; p4 -c user_workspace revert ~/my_workspace

/ home / user / my_workspace - должен ссылаться на клиента 'user_workspace'.

Ответы [ 5 ]

31 голосов
/ 28 февраля 2011

1. Отменить ожидающий список изменений

Приходится использовать нотацию Perforce вместо нотации локального каталога, поскольку локальный каталог больше не существует.

p4 -c user_workspace revert -k //...

// бла / бла / бла / файл # rev - было отредактировано, отменено

2. Удалить рабочее пространство клиента

p4 client -d user_workspace

Клиент user_workspace удален.

5 голосов
/ 30 мая 2013

это даст вам ожидающие изменения на клиенте

p4 changes -c user_workspace

это удалит список ожидающих изменений на ваш выбор

p4 change -d <change list number>

после этого вы можете удалить клиента, используя

p4 client -d user_workspace 
3 голосов
/ 30 июля 2013

Командная строка не работает для меня.Это продолжало сообщать "по квоте лицензии" для любых команд.Я, вероятно, что-то настроил неправильно связано с этим.Это будет означать, что мне придется сначала исправить эту проблему, а затем использовать вышеуказанное решение.Однако я нашел другой способ исправить эту проблему с помощью клиента p4v.

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

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Альтернативно: попробуйте эти четыре шага, используя только клиента p4v *

  1. Отредактируйте рабочее пространство и просто очистите поле хоста от старого рабочего пространства.В другой ветке я прочитал, что это позволяет редактировать с любого компьютера.
  2. Переключиться на рабочее пространство
  3. Вернуть файлы в представлении WORKSPACE;не было необходимости синхронизировать файлы на моем локальном компьютере
  4. Удалить рабочее пространство после возврата на вкладку рабочих пространств.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

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

0 голосов
/ 27 апреля 2015

Написал этот скрипт с именем p4-delete-client для удаления клиента p4 (у которого есть списки изменений и другие проблемы).
Он имеет следующие особенности:

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

Обратите внимание, что сценарий опирается на другие сценарии в repo .

0 голосов
/ 28 февраля 2011

Команда rm -rf удаляет только файлы в вашей системе, рабочая область еще существует в рабочем состоянии. Если вы хотите удалить его, вы должны сначала восстановить файлы.

p4 вернуться ~ / my_workspace клиент p4 -d user_workspace

...