Как найти все регистрации в папке perforce depot в течение двух временных меток

Я использую как командную строку, так и p4v. Мне нужно найти все проверки, которые были отправлены в папку между двумя временными метками (или временами).

Любая помощь будет оценена.


person Ankur Agarwal    schedule 21.04.2011    source источник
comment
Должен ли это быть автоматизированный процесс?   -  person Mike O'Connor    schedule 22.04.2011


Ответы (3)


Это можно сделать с помощью P4V или приложения командной строки P4. В любом случае вам необходимо разобраться в некоторых тонкостях использования Спецификации файла Perforce. Специально для того, о чем вы спрашиваете, мы будем использовать формат @гггг/мм/дд, чтобы указать диапазон дат для проверки файлов.

Для начала я просто наберу p4 changes, чтобы отобразить список всех изменений для текущей спецификации клиента:

C:\Project>p4 changes
Change 5 on 2011/03/16 by goyuix@laptop 'Initial commit for upgrade to .'
Change 4 on 2010/07/02 by goyuix@desktop 'fixed a bug for really bad reco'
Change 3 on 2010/04/19 by goyuix@desktop 'deleted project.dll from the sourc'
Change 2 on 2010/04/19 by goyuix@desktop 'deletion of library.dll '
Change 1 on 2010/04/18 by goyuix@desktop 'Initial commit '

Как видите, у меня есть пять списков изменений и их доступные даты. Если бы я хотел ограничить это, я бы изменил команду p4 changes, используя спецификацию файла даты, следующим образом:

C:\Project>p4 changes //depot/Project/MAIN/*@2010/01/01,@2010/12/31
Change 1 on 2010/04/18 by goyuix@desktop 'Initial commit '

Это говорит мне о нескольких вещах: во-первых, я использовал подстановочный знак *, который проверяет только содержимое указанной папки — без дочерних элементов. Если вам нужно искать рекурсивно, используйте спецификацию ... вместо спецификации *. Кроме того, я указал диапазон дат, разделив начальную и конечную даты запятой, добавленной в конце спецификации файла. Вывод этой команды говорит мне, что только список изменений 1 действительно внес изменения в любой из файлов в этой папке в течение 2010 года.

Чтобы сделать то же самое с помощью P4V, вы можете увидеть его в двух разных представлениях. Самый простой способ — просто перейти к нужной папке с помощью представлений «Хранилище» или «Рабочая область», а затем открыть вкладку «История» (щелкните значок в виде часов). Списки изменений в любом случае обычно сортируются по дате, но если это не так, вы можете просто щелкнуть заголовок столбца, чтобы настроить порядок сортировки и визуально проверить заданный диапазон дат.

Использование представления «Интервальная съемка» немного запутанно, но оно также даст вам более точное представление. Откройте P4V, перейдите к папке, в которой вы хотите просмотреть историю использования представления Depot или Workspace, и щелкните правой кнопкой мыши эту папку. Во всплывающем меню выберите «График изменений», а когда он откроется, в раскрывающемся меню «Инструменты» выберите «Просмотр с интервальной съемкой».

В окне Time Lapse у вас есть варианты вверху, чтобы выбрать режим (выбрать несколько версий) и диапазон содержимого (выбрать шкалу дат). Это должно позволить вам визуально идентифицировать файлы, о которых идет речь.

person Goyuix    schedule 22.04.2011
comment
отличный ответ, небольшая мелочь - График изменений доступен только для папок в представлении депо, по крайней мере, в p4v 24/2/2010. - person tenpn; 03.05.2011

Пытаться

p4 changes //depot_name/my_folder/...@2011/02/01,2011/03/01, чтобы получить все изменения в папке my_folder между 01 февраля 2011 г. и 01 марта 2011 г. Если вам это нужно между 01 февраля 2011 г. и последней версией, используйте @now вместо 2011/03/01. Для дат вы также можете указать время в формате чч:мм:сс, поэтому p4 changes //depot_name/my_folder/...@2011/02/01:03:22:50,2011/03/01:04:05:06 будет искать только между датами 01 февраля 2011 г., 03:22:50 и 01 марта 2011 г. 4: 05:06

person aflat    schedule 22.04.2011
comment
Не знал, что в предложении @ можно ставить метки времени, хорошо. - person Mike O'Connor; 22.04.2011

Не уверен, действительно ли диапазон изменений работает для представлений, а не для конкретных файлов, которые вы указываете. Одним из наиболее интуитивно понятных применений этого было бы получение ряда списков изменений:

p4 changes //view/...@1210,@1200

Вы ожидаете получить 10 или менее списков изменений, но вы не получите либо ничего, либо всех. Это моя клиентская версия, не уверен, исправили ли они это в последующих выпусках.

Perforce — быстрая система управления конфигурацией программного обеспечения. Авторское право 1995-2010 Perforce Software. Все права защищены. Версия P4/NTX86/2010.1/265509 (24 сентября 2010 г.).

person Pip    schedule 19.09.2011