Задача на ветку с выполнением - PullRequest
3 голосов
/ 30 июня 2010

Я готовлю семинарию о p4 и пытаюсь найти лучший способ использовать методологию «Задача на ветку», теперь я использую следующие шаги: (все по CLI)

  • Установите мой клиент в корневой депо для создания новых филиалов.Вид: // депо / ... //myMachine/...

  • p4 -c myClient Integ -v // депо / MAIN / ... // депо / myBranchX /...

  • p4 -c myClient submit -d "Ветвление"

  • Снова измените моего клиента с целью перехода в новую ветку.Просмотр: // depot / myBranchX / ... //myMachine/...

  • p4 -c myClient sync

i'mинтересно, есть ли самый быстрый / лучший способ сделать это.Специально работает с огромными репозиториями и ветками.

Спасибо!M.

1 Ответ

3 голосов
/ 01 июля 2010

Итак ... вы хотите создать ветвь для каждой задачи / ошибки и хотите, чтобы вновь созданная ветвь была сопоставлена ​​с клиентом / рабочей областью как , если это была магистраль. И вы хотите иметь возможность сделать это через командную строку или запустив скрипт. Правильно?

OK.

По какой причине вы хотите принять этот рабочий процесс? Работаете ли вы над критическим программным обеспечением, т. Е. Сценарием жизни / смерти, где каждая задача изолирована, и необходимо тщательно проверить перед интеграцией в основную линию.

Если у вас нет ситуации, как выше, я бы рекомендовал против этого рабочего процесса. Создание ветки для каждой задачи, особенно в большом репозитории, в конечном итоге приведет к обходу сервера Perforce. Подобная ситуация была недавно опубликована в блоге Perforce как анти-шаблон (что не делать). Выполнение анти-паттернов, часть 2: чрезмерное использование ветвления.

Подумай об этом.

Если вы все еще хотите продолжить, то вы можете достичь того, что хотите, написав сценарий оболочки (DOS, Bash, Python **), который группирует вышеуказанные команды вместе, принимая несколько аргументов для имени задачи / ветви и т. Д. Комментарий если вам нужна дополнительная помощь в этом.

** предпочтительнее, затем скомпилируйте скрипт, используя py2exe в качестве исполняемого файла для распространения.

...