В чем разница между shelve и submit в perforce?

#perforce

#поневоле

Вопрос:

Я использую недавно поневоле из-за того, что компания, с которой я работаю, использует perforce.

Единственным SCM, с которым я работал, был Git и только в течение 3 месяцев (поскольку я младший), и я знаю основные команды.

Теперь я обнаружил, что в P4 есть shelve и submit (я только что узнал push о git), так что, насколько я понял из документов, shelve было бы эквивалентно git stash и submit эквиваленту push ?

Ответ №1:

Аналогии с git не идеальны, потому что Perforce — это система клиент-сервер, а git — распределенная система.

shelve принимает ваши изменения и сохраняет их на сервере, но они все еще находятся в отдельном списке изменений и не являются постоянными. Отложенное изменение все еще может быть дополнительно изменено или даже удалено, или его можно сделать постоянным, отправив shelf.

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