В чем разница между "Rollback..." и "Back Out Submitted Changelist #####" в Perforce P4V


Я хочу отменить изменения из одного из моих чекинов. В контекстном меню правой кнопки мыши конкретного списка изменений есть следующие два варианта:

  • откат...
  • Обратно Представлен Список Изменений

в чем разница между этими двумя? В каких ситуациях я должен использовать любой из них?

6 190

6 ответов:

обе эти операции восстанавливают набор файлов в предыдущее состояние и являются существенно более быстрыми и безопасными способами устранения ошибок, чем использование p4 obliterate команда (и вам не нужен доступ администратора, чтобы использовать их).

в случае "отката...- это может быть любое количество файлов, даже целый склад. Вы можете сказать ему откат к определенной ревизии, списку изменений или метке. Файлы восстанавливаются до состояния, в котором они находились на момент создания этой версии, список изменений или метка.

в случае "Back Out Submitted Changelist # # # # #" операция восстановления ограничивается файлами, которые были отправлены в changelist #####. Эти Файлы восстанавливаются до состояния, в котором они находились до отправки этого списка изменений, при условии, что с тех пор в эти файлы не было внесено никаких изменений. Если последующие изменения были внесены в любой из этих файлов, волей-неволей сообщит вам, что эти файлы теперь устарели. Вам нужно будет синхронизировать с редакцией head а затем разрешите разногласия. Таким образом, вы не случайно забиваете любые изменения, которые вы действительно хотите сохранить.

обе операции работают, по существу представляя старые ревизии как новые ревизии. Когда вы выполняете " откат...", ты восстановление файлов в состояние, в котором они находились в определенный момент времени, независимо от того, что произошло с ними с тех пор. Когда вы выполняете " назад..."вы пытаетесь отменить изменения, внесенные в конкретный момент времени, сохраняя те изменения, которые произошли с тех пор.

отменить представление списка изменений

вы не можете отменить успешную отправку списка изменений, но вы можете отменить ранее отправленные изменения двумя способами:

откат восстанавливает файл или набор файлов в указанную группу, дату или ревизию. Любые изменения, сделанные после этого момента времени не сохраняются. обратно удаляет определенные изменения, сделанные в данном списке изменений, дате или редакции, но позволяет пользователю сохранить изменения, внесенные в последующий пересмотр.

для деталей пожалуйста см. http://www.perforce.com/perforce/doc.current/manuals/p4v/Working_with_changelists.html

откат восстанавливает или отменяет наши изменения. Таким образом, P4 отменяет изменения в списке изменений (по умолчанию или new) в нашей локальной рабочей области. Затем мы должны отправить / зафиксировать этот список изменений backedout, как и другие списки изменений. Вторая часть важна здесь, так как она не автоматически возвращает список изменений на сервере, мы должны отправить список изменений backedout (что имеет смысл после того, как вы это сделаете, но я изначально предполагал, что это так автоматически.)

как указывали другие, откат имеет большие полномочия - он может восстановить изменения на определенную дату, список изменений или ревизию#

откат... вам будет предложено выбрать папку для отката, т. е. она будет работать на определенных папках, и вы можете откатиться к меткам или спискам изменений или датам. Back out работает над файлами в определенных списках изменений.

Я объясняю это пользователям, сравнивая Perforce changelists со стеком (из структур данных).

резервное копирование удаляет один элемент из любого места в стеке.

откат удаляет n элементов из верхней части стека.

в самом простом виде разница является одним из множества:

  • Backout отступает из одного списка изменений (будь то самый последний или нет). т. е. он отменяет один список изменений.
  • откат откатывает изменения столько, сколько нужно, чтобы добраться до предыдущего списка изменений. т. е. он отменяет несколько списков изменений.

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

Итак, мнемоника:

  • откат → несколько поворотов
  • Backout → назад из a один парковочное место

надеюсь, это поможет!