Perforce noob здесь - у меня есть файл на полке, который я хочу убрать, чтобы запустить несколько вещей, однако файл извлекается исключительно на другой машине. В идеале я хочу убрать файл с полки локально, сделать несколько вещей, а затем выбросить мои локальные изменения.
Я рассматривал возможность использования p4 print
и p4 copy
, но они, похоже, не работают должным образом - например, copy, кажется, копирует файлы между путями депо.
Как снять с полки и игнорировать блокировку? Или как загрузить файл с полки, чтобы перезаписать его локально?
Два варианта:
Используйте p4 print FILE@=SHELF
, чтобы получить содержимое файла. Это очень просто для одного файла, но будет раздражать для нескольких файлов.
Создайте новую ветку / поток и уберите ее туда; эксклюзивная блокировка не является глобальной для разных веток, поэтому вы можете делать все, что захотите, в своей ветке.
С потоками вариант 2 выглядит так:
p4 switch -c my-new-stream
p4 unshelve -S my-new-stream -s SHELF
С ручными спецификациями веток это больше похоже (при условии, что ваш клиент отображает все, если нет, есть дополнительный шаг по добавлению новой ветки в ваше сопоставление клиента):
p4 branch my-new-branch
(fill in a view mapping the current branch to your new branch)
p4 copy -b my-new-branch
p4 submit
p4 unshelve -b my-new-branch -s SHELF