Выполнение клиентских сопоставлений конкретной ревизии / списка изменений

Есть ли способ настроить рабочее пространство Perforce с сопоставлениями клиентов для конкретной ревизии некоторых элементов?

Например:

//depot/...                 //localpath/...
//depot/external/...@117    //localpath/external/...

В этом случае первая строка должна отобразить все депо на localpath, но external подпапка должна быть сопоставлена ​​с ревизией 117 external папка депо.

Я знаю, что этот синтаксис не работает, но есть ли способ достичь этой цели, используя только сопоставления клиентов?

2 ответа

Решение

Нет, невозможно отобразить определенные ревизии (с помощью метки, даты или других) файлов.

Способ, которым вы могли бы решить это, состоит в том, чтобы //depot/external/...@117 в отдельный путь, а затем сопоставьте этот путь:

p4 integrate //depot/external/...@117    //depot/external_v117/... p4
submit

Тогда представление клиента может быть таким:

//depot/...                 //yourclient/...
//depot/external_v117/...   //yourclient/external/...
-//depot/external/...         //yourclient/external/...

Но, как вы могли заметить, дерево депо очень запутано. Поэтому вы должны заранее спланировать такую ​​структуру.

В версии 2014.2 сервера Perforce появилась интересная новая функция, которая может удовлетворить ваши потребности:

#770674 (Bug #1648) **
    Client specs now support an optional 'ChangeView' field that
    locks certain depot paths to a particular changelist level:

    ChangeView:
        //depot/path/...@1000

    Revisions belonging to files under those paths will not be
    visible if they were submitted after the given changelist.
    Files mapped in the ChangeView may not be submitted.
Другие вопросы по тегам