Перенесировать смену изменений

Я столкнулся с проблемой слияния из-за плохой практики scm. Я дал сборку ветки perforce, когда последний список изменений # был, скажем, 1000. Теперь, после того, как команда разработчиков отправила намного больше списков изменений, последний список изменений № 1050. Проблема в том, что smoke test в сборке не удалось, и теперь Я исправил его и отправил список изменений # 1051.

Мой вопрос заключается в том, чтобы каким-то образом слить изменение, сделанное в 1051 на 1000. Или, другими словами, создать сборку со всеми изменениями до списка изменений # 1000 и включая только список изменений # 1051.

Надеюсь, я смог объяснить проблему таким образом, который имеет смысл.

P.S: Я знаю концепцию ветвей Main, Release и Dev. Как-то теперь я в этом беспорядке, давая возможность построить ветку dev и ищу решение.

Ответ 1

Один из способов - создать другую ветку, например:

  • p4 integ//depot/build/branch/[email protected]//depot/bugfix/branch/...
  • p4 submit
  • p4 integ//depot/build/branch/[email protected]=1051//depot/bugfix/branch/...
  • p4 resolve
  • p4 submit

Теперь создайте //depot/bugfix/branch и дайте это вашей тестовой команде.

Ответ 2

Try

  • p4 sync//depot/branchname/... @1000
  • p4 sync//depot/branchname/... @1051, @1051

Это говорит perforce, синхронизирует рабочее пространство с списком изменений 1000. Затем 2 говорит, что синхронизирует все файлы из списка изменений с 1051 по 1051, в основном это означает только синхронизацию изменений, которые находятся в списке изменений 1051. Вы также можете использовать p4v

  • Щелкните правой кнопкой мыши по //depot/branchname и Get Revision, затем введите 1000 в качестве списка изменений.
  • В представленной вкладке справа щелкните правой кнопкой мыши по ссылке 1051, "Получить ревизию". Нажмите кнопку добавления, чтобы добавить //depot/branchname, введите 1051 в качестве списка изменений, а затем установите флажок "Только получить файлы, указанные в этом списке изменений".