Восстановить файл не в рабочей области принудительно

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

p4 user -f -d auser
User auser has file(s) open on 1 client(s) and can't be deleted.

Однако у auser больше нет связанных клиентов, и если я отфильтрую просмотр списка ожидающих изменений в P4V, он покажет, что пользователь имеет один извлеченный файл в списке изменений по умолчанию, но клиент не указан. Даже если я войду в систему как пользователь, я не смогу вернуться или что-то сделать с файлом. Любые подсказки, как я могу это решить?


person Toby Allen    schedule 26.05.2009    source источник


Ответы (2)


Пока обе эти команды ничего не вернули:

$ p4 clients -u <USER>

$ p4 changes -s pending -u <USER>

Эта команда показала мне, какой файл был открыт:

$ p4 opened -u <USER>
//depot/path/to/file#1 - edit default change (text) by <USER>@<CLIENT>

Эта команда не работает:

$ p4 -u <USER> -H <CLIENT> revert -k //depot/path/to/file
//depot/path/to/file#1 - belongs to user <USER>, not reverted

Удаление клиента делает:

$ p4 client -o <CLIENT> > <CLIENT>.txt
$ p4 client -d -f <CLIENT>
$ p4 opened -u <USER>
File(s) not opened anywhere.

FTW! \о/

Если вам нужно, вы можете воссоздать клиента с помощью:

$ p4 client

Затем прочитайте файл <CLIENT>.txt, который вы создали с выводом p4 client -o <CLIENT>, и сохраните его.

Подробнее здесь: http://answers.perforce.com/articles/KB_Article/Reverting-Another-User-s-Files

person JohnGH    schedule 07.06.2013

Решено.

Немного странно, но это то, что я сделал. Я получил подробную информацию о списке изменений по умолчанию, содержащем файл. У него было имя рабочей области, которое было именем машины. Я вошел в систему, а затем в perforce как пользователь. В этот момент я мог увидеть ожидающий список изменений и вернуть файл. Теперь я могу удалить пользователя.

Как это произошло?

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

person Toby Allen    schedule 27.05.2009