Как интегрировать каждый отдельный список изменений при слиянии / разрешении в Perforce? - PullRequest
4 голосов
/ 12 мая 2011

Я довольно новичок в Perforce, но у меня уже есть опыт работы с DVCS, такими как Git и Mercurial, и я знаком с основными принципами Perforce.

Сегодня я немного поиграл с p4v и создал ветку некоторого кода воспроизведения, используя функцию Integrate.... Позже я изменил ветку исходного кода и хотел интегрировать эти изменения и в новую ветку. Однако все отдельные списки изменений были объединены в один большой список изменений. Это не кажется лучшей практикой для меня. Если вы разрабатываете функцию или исправление ошибки, у вас, естественно, будет несколько отправок, потому что каждая отправка должна быть атомарной.

Как сохранить весь список изменений при слиянии или разрешении?

Ответы [ 2 ]

8 голосов
/ 12 мая 2011

«Лучшая практика» зависит от вашего рабочего процесса и от того, как настроены ваши филиалы. Действительно, настало подходящее время, чтобы единый список изменений содержал все интегрированные списки изменений - мы делаем это довольно часто в нашей студии, когда создаем «функциональные» ветки, и ветке нужен самый последний и актуальный основной код. С другой стороны, интеграция для каждого списка изменений может быть очень полезна в конце цикла продукта, когда вам нужно разветвить определенные исправления или функции в ветке выпуска.

Интеграция по списку изменений проста:

  1. Найдите список изменений, который вы хотите отправить, на панели «представленный список изменений» (ctrl-2)
  2. Щелкните правой кнопкой мыши по списку изменений и выберите «интегрировать с использованием представленного списка изменений NNN»
  3. Установите все необходимые параметры в следующем диалоговом окне.

Оттуда вы можете затем просмотреть и / или запустить интегрирование. Как подсказка, я всегда предварительно просматриваю интеграцию. При этом будут отмечены потенциальные ошибки или условия предупреждения, с которыми вы, возможно, захотите разобраться, прежде чем выполнять фактическую интеграцию.

Этот метод интеграции списка изменений за один раз называется "сбор вишни". У Perforce есть отличная статья базы знаний о списках изменений по сбору вишни здесь .

1 голос
/ 12 мая 2011

В зависимости от того, как вы развиваетесь, это хорошо или плохо. Иногда вы хотите, чтобы вишня изменилась, а иногда - все.

Если вы хотите объединить только 1 список изменений, на экране интеграции разверните стрелку с надписью «Ограничить диапазон интеграции», после чего вы можете выбрать, какие файлы будут интегрированы. Если вам нужен только 1 список изменений, выберите «Интегрировать только ревизии между» и выберите только ваш список изменений для обоих. Как видите, вы также можете сделать это по ревизии, дате, метке и рабочему пространству. Это очень гибкий способ.

...