Файл Perforce заблокирован покойным пользователем
У меня есть файл, который заблокирован / извлечен исключительно пользователем, который больше не работает в компании. Мне нужно внести изменения и хочу знать, как "украсть замок".
5 ответов
Попросите вашего администратора перформанса снять блокировку, выполнив
p4 unlock -f <file>
PS: Чтобы повторно использовать лицензию ушедшего пользователя, администратор перформанса может также захотеть очистить оставленные им файлы. Он может отменить отложенные изменения, если они бесполезны, или передать их другому пользователю через "p4 reopen". "Повторное открытие" и "Возврат после повторного открытия" также могут выполняться обычными пользователями.
"Заблокировано" и "извлечено" - две разные вещи, для отмены которых требуются две разные операции. Как сказал Питер Г., администратор может разблокировать файл командой unlock:
p4 unlock -f <file>
Однако, чтобы отозвать файл, извлеченный другим пользователем, вам необходимо выдать себя за этого пользователя, передав его клиенту (имя рабочей области), хосту (имя компьютера) и имена пользователей команде revert, например так:
p4 -c их клиент -H их хост -u их пользователь возвращает имя файла
Поэтому, если у пользователя Perforce с именем jdoe есть файл foo.txt, извлеченный в рабочей области ws1 на хосте с именем joesPC, администратор может отменить его с помощью следующей команды:
p4 -c ws1 -H joesPC -u jdoe revert foo.txt
У вас есть три варианта, и если вы не знаете пароль пользователя, для всех трех потребуется админ.
p4 unlock -f filename
- это будет работать только если вы администратор. Кроме того, он не будет работать с файлами с
+l
тип файла, такой какbinary+l
- при таком сценарии его нужно будет повернуть вспять.
- это будет работать только если вы администратор. Кроме того, он не будет работать с файлами с
С паролем пользователя (попросите администратора p4 очистить его, если никто не знает, что это такое), используйте команду, подобную предложенной вороной:
p4 -c theirclient -H theirhost -u theiruser -p theirpassword revert -k filename
Или без пароля, попросите администратора использовать эту последовательность:
$ p4 login theiruser User theiruser logged in. $ p4 -c theirclient -H theirhost revert -k filename
Некоторые фиктивные пользователи могут оформить весь склад и заблокировать все файлы:
Если у вас есть права администратора, вы можете использовать:
p4 client -d -f clientname
Где clientname - это имя рабочей области.
У меня была аналогичная проблема с файлом на моем клиенте. Я говорил, что не могу редактировать файл, потому что он открыт на том же клиенте. Потратил пару дней на ожидание разблокировки администратора, но у меня сработало следующее:
p4 opened -x
p4 -c <client_name> unlock -x //filepath