perforce: синхронизация с более ранней версией
Я хочу протестировать исправление и сравнить поведение перед исправлением против now; мне нужно синхронизировать с более ранней версией. Итак, если исправление было зафиксировано в ревизии x; как я могу синхронизировать с одной ревизией раньше, скажем x0?
3 ответов
Я нашел ответ во время написания моего вопроса. Я пытался:
p4 sync ...@x0
где x0-список изменений перед изменением, содержащим исправление. Но только часть файлов была возвращена. Я нашел вопрос, который, когда мы указываем ... синхронизируются только файлы в этой папке и подпапках. Таким образом, выше команда должна выполняться из корня рабочей области.
скажите, что вы хотите вернуться к ревизии " n "из revison" n+1 " (откат). Вы можете сделать следующие шаги:
-
синхронизация p4 ...@n
Это синхронизирует ваши файлы с более старой версией, которую вы хотите
-
П4 изменить ...
откройте все файлы для редактирования или "P4 edit filename", чтобы открыть только определенный файл для редактирования.
- синхронизация p4 ...@n+1
перед отправкой вам необходимо синхронизировать файлы к последней редакции репозитория.
- P4 resolve-ay
Это примет изменения, которые вы сделали, т. е. вернет все изменения, сделанные при переходе от версии " n " к "n-1". Таким образом, все ваши файлы были откатаны до версии " n " в вашем локальном репозитории.
-
П4 представить ...
вперед и представить изменения. Это приведет к откату всего основного репозитория в редакцию 'n'. Эффективно изменения 'n' и "n+2" (ток) будет идентичным.
-
P4 diff2-Q репозиторий@N репозиторий@n+2
Это просто для того, чтобы проверить, откатили ли файлы. Это должно показать, что у вас нет разных файлов в двух версиях.
Я нашел решение из этой ссылке .
Если вы хотите синхронизировать определенный номер версии (не номер списка изменений) для определенного файла. Это сработало для меня:
p4 sync //your/depot/path/and/file.name#1
чтобы убедиться, у вас есть версия, которую вы хотите, вы можете использовать have
cmd
p4 have //your/depot/path/and/file.name