Получить список списков изменений, которые не были интегрированы в конкретную ветку - PullRequest
12 голосов
/ 20 мая 2011

Если у меня есть ветвь A и ветвь B. Ветвь B была разветвленной от ветки A. Периодически мы интегрируем изменения из ветки B обратно в ветвь A. Есть ли команда p4 для вывода списка изменений ветви B, которые еще не были интегрированы?в ветвь А?Я могу подумать о некоторых причинах, по которым это может оказаться невозможным, учитывая, что файлы списка изменений не обязательно ограничены одной веткой, но я надеюсь на лучшее здесь.

Я нашел этот вопрос: Можно ли перечислить списки изменений, которые были интегрированы в рабочее пространство?

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

Ответы [ 2 ]

18 голосов
/ 20 мая 2011

Вы хотите использовать команду interchanges.В настоящее время он не поддерживается (по состоянию на выпуск 10.2), но 'p4 help interchanges' поможет вам использовать инструмент в командной строке (в настоящее время он доступен только в командной строке).Я не помню конкретно, какая версия была введена этой командой.

p4 interchanges -b mybranch

Будет сообщать о неинтегрированных изменениях, как определено в спецификации филиала.Используйте '-r', как если бы вы использовали 'p4 Integ', чтобы обратить отображение ветвей.Спецификации файлов также могут быть указаны в командной строке, если у вас нет спецификации ветки:

p4 interchanges //depot/main/... //depot/RelA/...

Будет сообщать о неинтегрированных изменениях с основного на RelA

Как и в случае любых недокументированных / неподдерживаемых функций, вы должны быть осторожны с выводом.Могут быть некоторые ситуации, которые приводят к возвращению неточной информации.Однако мой опыт работы с этой командой был замечательным.Команда кратко описана в книге «Практическое исполнение» Лоры Вингер.Я хочу сказать, что эта команда, скорее всего, очень скоро найдет свое применение в общей помощи.

Надеюсь, это поможет.

0 голосов
/ 31 марта 2015

Результат отображения команды interchanges, как показано ниже

Измените #Changelist Number на #Date by # Person @ # Workspace #Description.

Если вам необходимо отобразить выборочные столбцы для дальнейшей обработки (Генерация отчета).Вы можете попробовать что-то вроде ниже на Linux / Unix box.

p4 interchanges //depot/branch1/... //depot/branch2/... | awk '{print $2"|"$4"|"$6"|"substr($0,index($0,$7)) }' 
...