Каковы преимущества нескольких рабочих пространств Perforce? - PullRequest
6 голосов
/ 26 октября 2011

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

Есть ли реальная выгода от использования здесь нескольких рабочих пространств или они в первую очередь предназначены для сценариев с одним пользователем и несколькими машинами?Когда полезно несколько рабочих пространств?

Ответы [ 2 ]

6 голосов
/ 26 октября 2011

Одним из «преимуществ» является то, что один и тот же файл может быть открыт несколько раз. Я цитирую преимущество, потому что у перформанса есть другие, возможно, лучшие способы справиться с этим сценарием. Еще один связанный сценарий - это возможность синхронизировать файл дважды на одном компьютере. Это может быть полезно для таких вещей, как заголовки, где потребляющий код широко разделяется в хранилище (хотя для конкретного случая заголовка есть и другие решения). И, конечно же, несколько клиентов полезны для сценариев с несколькими компьютерами. У вас может быть клиент / пользователь для выполнения сборок отдельно от одного, выполняющего разработку.

Основным преимуществом является предоставление контекста по умолчанию для таких команд, как синхронизация p4, редактирование и т. Д. Хотя вы можете указать подмножества вашего клиента для синхронизации и создать несколько ожидающих изменений списков, это требует некоторой дисциплины все время, а не небольшой дисциплина заранее. Вы по-прежнему можете совершать ошибки с несколькими клиентами и отправлять несвязанные изменения или синхронизировать с правильной меткой или аналогичной для одного фрагмента кода, но не для другого, но это уменьшает вероятность этих ошибок, уменьшая юниверс, с которым вы работаете, в меньшем объеме. .

Perforce имеет очень богатый набор (теперь я звучу как реклама) функций для локального картирования частей депо. Функция нескольких рабочих пространств имеет больше смысла в контексте этих других функций. Если вы не можете придумать причину, по которой вы хотите использовать эту функцию, не делайте этого. Но однажды вам может понадобиться сделать что-то странное, поэтому держите это в кармане.

1 голос
/ 26 октября 2011

Я использую несколько рабочих пространств для кодирования на нескольких платформах.На моем основном ПК с Linux у меня есть рабочая область, которую я использую чаще всего.Код также должен поддерживать платформу SGI / Irix, поэтому у меня также есть рабочее пространство для этой машины.

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

Я также использую рабочее пространство для Windows, в котором я работаю с документами Microsoft Office.У нас наш склад разделен на документы и код, и код сопоставлен с моими рабочими пространствами на ПК / Linux и SGI / Irix.Мои документы отображаются в моей рабочей области, которую я использую в Windows.

...