Есть ли способ из командной строки p4 отложить локальные изменения, не проверив сначала файлы в Perforce? - PullRequest
2 голосов
/ 02 ноября 2019

Наш проект перформанса имеет эксклюзивную блокировку, поэтому мы не можем извлекать файлы, извлеченные другими людьми. Есть ли способ обойти проверку файлов и отложить локальные изменения напрямую?

Я безуспешно пытался использовать "p4concile" и "p4 print".

1 Ответ

2 голосов
/ 02 ноября 2019

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

Идея файлов с эксклюзивным открытием (+l) заключается в том, что, поскольку их невозможно объединить, вы никогда не захотите, чтобы кто-то вносил изменения, основанные на чем-то отличном от последней версии (в том числе на той версии, над которой кто-то сейчас работает). Таким образом, создание полки из файла +l идет вразрез с этим (поскольку ваша полка будет основываться на текущей редакции депо и не будет включать изменения другого пользователя).

Если это файлтам, где имеет смысл изменить его одновременно, он, вероятно, не должен иметь тип +l. ИМО тип +l следует использовать экономно или никогда. Вы можете убедиться, что вам не нужно будет разрешать изменения, используя обычный p4 lock, который позволяет другим пользователям открывать и хранить файл в любое время, но не отправлять его до снятия блокировки;выяснение того, как разрешить и отправить после отправки ваши изменения, будет их проблемой.

Если вы не можете контролировать, использует ли этот файл +l, и вам нужночтобы получить ваши изменения на сервере, я бы рекомендовал разветвить файл (+l не предотвращает этого, даже если это возможно), и отправить / отложить ваши изменения в ветку.

...