Как преобразовать местоположения хранилища Perforce в местоположения просмотра клиента - PullRequest
9 голосов
/ 19 ноября 2008

Я хотел бы знать, как преобразовать местоположения хранилища Perforce в местоположения просмотра клиента с целью написания сценария.

У меня есть скрипт, который сначала проверяет файл для редактирования в процессе, а затем взаимодействует с файлом. Мне нужно преобразовать местоположение депо (то есть \ Projects \ Project6) в местоположение просмотра клиента. (т.е. d: \ Projects \ Project6).

Возможно ли это?

Ответы [ 3 ]

11 голосов
/ 19 ноября 2008

Я всегда использовал для этого команду p4 где . Вот его описание из встроенной справки:

where -- Show how file names map through the client view

p4 where [ file ... ]

    Where shows how the named files map through the client view.
    For each argument, three names are produced: the name in the
    depot, the name on the client in Perforce syntax, and the name
    on the client in local syntax.

    If no file is given, the mapping for '...' (all files in the
    current directory and below) is shown.

    Note that 'p4 where' does not determine where any real files are.
    It only computes where they should be according to the client view.
3 голосов
/ 19 ноября 2008

Я бы использовал команду p4 fstat . Я считаю, что его формат немного легче разобрать, чем p4 имеет . Кроме того, если вы пишете это в python, вы можете использовать опцию -G , чтобы возвращаемые значения маршалировались как словари python.

Также полезно отметить, что вы можете набрать p4 справочных команд , чтобы увидеть список команд и краткое описание их действий.

2 голосов
/ 19 ноября 2008

Проверьте команду p4 have. Вы даете ему или местоположение депо или имя файла клиента, и оно дает вам местоположение депо, имя файла клиента, и какая у вас версия этого файла. 1008 *

...