2010-01-20 3 views
15

Я прорыл через переплетки все, что могу, и я не могу из-за отсутствия у меня найти способ легко зашивать или разветвляться локально с perforce. Я знаю об обертке git для perforce, но она действительно не кажется слишком развитой или надежной из всего, что я читал об этом.Есть ли эквивалент git stash in perforce?

ответ

3

Что касается ветвления, я сомневаюсь, что вы можете «разветвляться» локально в Perforce, и вы тоже не могли бы спрятаться.

  • Гит основан на графике фиксаций (а DAG - Directed Acyclic Graph на самом деле), который будет отображать только содержание коммита (деревьев и блобов)
  • неволей представляет собой linear VCS, основанный на композиции правил отбора (она будет составлять, что отображать на основе местных правил отбора)

что касается разветвленности:

  • Ветвь в Git это просто путь в графе
  • филиала в Perforce является:
    • codeline (скорее всего значение при использовании в качестве существительного)
    • спецификации вида ветви (как в сущности созданный командой «p4 branch» - это также существительное) - об этом говорят ниже
    • при использовании в качестве глагола ("to branch") это означает использование команды «p4 integrate» для создания новой кодолинга (или ветви!) одного или нескольких файлов

Как указано в этом introduction to perforce branching, Perforce, будучи сильно связан с его центральным депо, необходимо создать соответствующие метаданные для каждого файла для создания ветки.
Git написал бы только несколько бит, чтобы зарегистрировать создание новой ветки!

+18

Вздох. Я действительно начинаю ненавидеть Perforce.Почему люди платят за это? – bergyman

+0

@ Крис: Ну ... http://stackoverflow.com/questions/1444427/commercial-version-control/1444454#1444454 или http://stackoverflow.com/questions/1346031/is-perforce-worth-it/ 1346196 # 1346196 – VonC

+4

У Perforce, похоже, не хватает многих из того, что я узнал как почти существенное, по крайней мере, для себя, рабочих процессов. Я использовал cvs, svn, git и теперь Perforce. Руки вниз git сделали для меня самым здравым смыслом. Теперь с perforce, если я нахожусь в середине исправления ошибок и что-то еще происходит, кажется, что я мало что могу сделать, кроме того, что вручную перекладывает файлы в списках изменений, чтобы убедиться, что я не проверяю незавершенные, несвязанные работайте над тем, что только что появилось, что требует моего внимания. Локальное скрепление или разветвление делают этот торт Я пропустил какой-то способ сделать это с помощью Perforce? – bergyman

31

неволей 2009,2 имеет сукно и unshelve, которые позволяют поместить изменения на сервере, без проверки их. http://blog.perforce.com/blog/?p=1872

Я думаю, что обеспечивает своего рода функциональность вы хотите?

Если вы еще не используете 2009.2, есть также P4_Shelve и p4tar как возможные альтернативы.

+0

Очень интересно и полезно. +1 – VonC

+3

Слишком плохо, что ОП не проверял этот вопрос более 4 часов после этого ответа выше , это позор, что это выбранный ответ. – umassthrower

2

Будущая версия Perforce будет иметь частное локальное ветвление. P4Sandbox позволит вам иметь локальное, отключенное подмножество депо. Вы можете вытащить с центрального сервера, делать все, что хотите в своей песочнице (включая ветвление и интеграцию), а затем, если хотите, вернуться к центральному серверу.

Стеллаж является ближайшим эквивалентом git stash, как объяснено в ответе Дугласа Ледера.

(Хотя изначально казалось, что P4Sandbox дебютирует в версии 2011.1, бета-версия 2011.1 не имеет этой функции, и я не могу найти упоминания об этом в документации для этой версии. As of August 2011, бета-версия P4Sandbox для «этой осени».)

+1

Ссылка на P4ASandbox выше 404. –

+1

Похоже, P4Sandbox был выпущен в 2012 году. См. http://www.perforce.com/perforce/doc.current/user/p4sandboxnotes.txt См. Также http://www.perforce.com/product/components/server-clients/distributed-version-control и http://www.perforce.com/perforce/doc.current/manuals/p4sandbox/index.html. . –

+1

@Daryl Все ссылки в ответах и ​​комментариях более не действительны. – Samuel

Смежные вопросы