Для серьезной сборки (которая готовится к тестированию) явно укажите желаемую метку или номер списка изменений, sync to label, и добавьте ее в артефакты сборки.
Если список изменений (или метка) не указан, используйте p4 counter change
, чтобы получить текущий номер изменения и записать его. Но вам все равно нужно синхронизировать все, используя этот номер изменения.
Я не думаю, что вы можете достичь именно того, чего хотите, потому что в целом все рабочее пространство не синхронизируется с определенным номером списка изменений. Можно явно синхронизировать некоторые файлы со старыми ревизиями, и тогда один номер списка изменений не имеет смысла. Вот почему требуется новый sync
, чтобы гарантировать, что один номер списка изменений точно представляет версию кода.
По поводу комментариев: Да, мой ответ предназначен для использования менеджерами конфигурации, готовящими сборку для предоставления в QA. Наши разработчики обычно не синхронизируются как часть сборки; они делают сборку перед отправкой & mdash; так, чтобы они могли убедиться, что их изменения не нарушают сборку или тесты. В этом контексте мы не стремимся встроить метку хранилища.
Используя ваш подход, вы предполагаете, что все ваше рабочее пространство было синхронизировано с заголовком во время вашей последней отправки списка изменений, и этот список изменений включал все ваши открытые файлы. Слишком легко ошибиться в этих предположениях, трудно обнаружить и ужасно дорого с точки зрения потерянного времени. С другой стороны, решить проблему легко, без недостатков. А поскольку номер списка изменений может быть указан явно, не имеет значения, какая версия вам нужна или как быстро изменяется кодовая база.