Удалите рабочую область клиента Perforce с отложенными файлами, когда рабочая область уже удалена с диска?
Как удалить рабочую область с ожидающими файлами, когда эта рабочая область уже удалена с диска?
Предостережение:
- 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.
Ответы
Ответ 1
1. Отменить ожидающий список изменений
Необходимо использовать нотацию Perforce depot вместо обозначения локального каталога, поскольку локальный каталог больше не существует.
p4 -c user_workspace revert -k //...
//blah/blah/blah/file # rev - было редактирование, возврат
2. Удалить рабочую область клиента
p4 client -d user_workspace
Клиент user_workspace удален.
Ответ 2
это даст вам ожидающие изменения на клиенте
p4 changes -c user_workspace
это приведет к удалению ожидающего списка изменений по вашему выбору.
p4 change -d <change list number>
после этого вы можете удалить клиента, используя
p4 client -d user_workspace
Ответ 3
Командная строка не работала для меня. Он продолжал сообщать "о лицензионной квоте" для любых команд. Вероятно, у меня что-то настроено неправильно. Это означало бы, что я должен сначала исправить эту проблему, а затем использовать вышеупомянутое решение. Тем не менее, я нашел другой способ исправить эту проблему, используя клиент p4v.
Рабочие пространства нежелательной почты были старыми рабочими пространствами с моего предыдущего компьютера. Те, у кого не было проверенных файлов, удалось щелкнуть правой кнопкой мыши по удалению на рабочем столе. Эти рабочие области с оставленными файлами я не смог удалить, поскольку другие испытывают. Чтобы удалить их, мне пришлось сделать несколько дополнительных шагов.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~
* Альтернативно: попробуйте выполнить эти четыре шага, используя только клиент p4v *
Во-первых, [мне нужно] отредактировать рабочее пространство и просто вычеркнуть поле хоста при изменении имени моего компьютера. В другом потоке, который я прочитал, это позволяет редактировать с любого компьютера. Во-вторых, [мне нужно было] переключиться на рабочее пространство, как я теперь мог. В-третьих, [мне нужно] вернуть файлы в представлении WORKSPACE, не нужно было синхронизировать файлы с моей локальной машиной. Наконец, [я смог] удалить рабочее пространство после перехода на вкладку рабочих областей.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~
Надеюсь, это поможет кому-то.
Ответ 4
Написал этот script, называемый p4-delete-client для удаления p4-клиента (который имеет списки изменений и другие проблемы).
Он имеет следующие функции:
- автоматически удаляет списки изменений (возвращается в ожидании и удаляет полки)
- исправляет имя хоста (если отличается от того, на котором был создан клиент)
- разблокирует клиента, если заблокирован
- удаляет клиент
- удаляет связанные файлы (может быть настроен не на аргументы)
Обратите внимание, что script полагается на другие сценарии в repo.
Ответ 5
Команда rm -rf удаляет только файлы в вашей системе, рабочее пространство все еще существует в perforce. Если вы хотите удалить его, сначала необходимо вернуть файлы.
p4 revert ~/my_workspace
p4 client -d user_workspace