Создание рабочих областей и работа с ними

Рабочие области служат для сопоставления папок в Visual Studio Team Foundation Server папкам на локальном компьютере, что необходимо при работе с командными файлами в системе управления версиями. При первой загрузке ("получении") локальных копий файлов из Team Foundation Server для них указывается локальная папка. Хотя пользователь может этого и не заметить, при выполнении такого действия создается рабочая область по умолчанию, сопоставляющая выбранную серверную папку с выбранной локальной папкой, и это сопоставление сохраняется.

Но вместо использования рабочей области по умолчанию можно создать рабочую область вручную. Этот вариант рекомендуется использовать, если работать с файлами из системы управления версиями нужно будет часто или если предполагается работать с файлами из нескольких папок.

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

  • обновлять локальные копии, чтобы для локального построения и тестирования использовались последние версии файлов;

  • извлекать файлы для изменения;

  • возвращать файлы, включать их в наборы отложенных изменений или отменять для них ожидающие изменения;

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

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

Содержание раздела

  • Базовые рекомендации по созданию рабочей области

  • Терминология рабочих областей

  • Быстрое получение файлов с помощью рабочей области по умолчанию

  • Создание рабочей области вручную

  • Использование нескольких рабочих областей для работы с несколькими ветвями

  • Устранение распространенных неполадок

Базовые рекомендации по созданию рабочей области

При создании рабочей области необходимо учитывать следующие рекомендации:

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

  • создавайте сложную рабочую область, содержащую несколько сопоставлений, только в тех случаях, когда требуются файлы их различных областей дерева исходного кода или когда для ограничения числа получаемых из папки файлов используется маскировка;

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

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

Терминология рабочих областей

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

Сопоставление папки системы управления версиями с локальной папкой

  1. Серверные папки содержат код и другие файлы командного проекта. Участники команды могут совместно использовать файлы в системе управления версиями, отслеживать изменения в них и возвращаться к более ранним версиям этих файлов. Чтобы получить список папок командного проекта, откройте командный обозреватель и дважды щелкните элемент Система управления версиями.

  2. Локальные папки содержат файлы, "получаемые" или извлекаемые с сервера системы управления версиям на локальный компьютера. При получении файла в локальную папку загружается доступная только для чтения версия этого файла. При извлечении файла загружается доступная для редактирования копия. При сохранении измененных файлов изменения сохраняются локально и фиксируются на сервере только при возврате файлов.

  3. Рабочие области сопоставляют серверные папки локальным папкам. Можно создать простую рабочую область, сопоставляющую одну серверную папку одной локальной папке, или сложную рабочую область, содержащую несколько сопоставлений. Если рабочая область содержит несколько сопоставлений, папки группируются в единый блок, над которым можно выполнять определенные операции, например получение последних версий файлов с сервера или возврат изменений. Чтобы получить список сопоставлений для рабочей области, в меню Файл выберите пункт Система управления версиями и щелкните Рабочие области. В диалоговом окне Рабочая область в списке Рабочая область выберите рабочую область и нажмите кнопку Изменить, чтобы открыть диалоговое окно Изменить рабочую область.

Быстрое получение файлов с помощью рабочей области по умолчанию

При работе с файлами из системы управления версиями Team Foundation Server необходимо использовать рабочую область. При первой загрузке ("получении") локальных копий файлов из Team Foundation Server для них указывается локальная папка. Хотя пользователь может этого и не заметить, при выполнении такого действия создается рабочая область по умолчанию, сопоставляющая выбранную серверную папку с выбранной локальной папкой, и это сопоставление сохраняется.

Быстрое получение файлов с помощью рабочей области по умолчанию

  1. Откройте Visual Studio и подключитесь к командному проекту.

    Дополнительные сведения см. в разделе Подключение и доступ к командным проектам на сервере Team Foundation Server.

  2. В командном обозревателе щелкните элемент Система управления версиями.

    Примечание

    Если рабочая область не была создана ранее, она будет создана при открытии обозревателя управления исходным кодом.Имя рабочей области будет совпадать с именем компьютера, и она будет отображаться в списке Рабочая область на панели инструментов обозревателя управления исходным кодом.

  3. Щелкните правой кнопкой мыши командный проект, папку или ветвь, из которой требуется загрузить локальные копии файлов, и выберите команду Сопоставить локальной папке.

    Важно!

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

    Откроется диалоговое окно Сопоставление.

  4. В поле Локальная папка щелкните многоточие (…), чтобы найти расположение, которое требуется использовать для хранения локальных копий файлов с сервера.

  5. В диалоговом окне Поиск папки укажите расположение локальных копий.

    Например, можно ввести C:\.

  6. Щелкните Создать новую папку и введите имя новой папки, в которую будут загружаться локальные копии.

    Например, можно ввести имя "Workspaces".

  7. В диалоговом окне Поиск папки нажмите кнопку ОК.

  8. В диалоговом окне Карта установите флажок Рекурсивно, чтобы загружать все файлы из папок в этой серверной папке, а затем щелкните Сопоставить.

  9. В появившемся окне сообщений нажмите кнопку Да, чтобы получить последние версии сопоставленных файлов.

Создание рабочей области вручную

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

Рабочая область для сопоставления только выбранных файлов

  1. Чтобы сопоставить все подпапки в папке, добавьте ее в столбец Папка в системе управления версиями. В столбце Локальная папка укажите уникальную локальную папку для хранения локальных копий файлов.

  2. Чтобы сопоставить только часть подпапок в папке, добавьте эту папку в одну строку, а все подпапки, не требующие сопоставления, добавьте в последующие строки. В столбце Локальная папка укажите уникальную локальную папку для хранения локальных копий файлов. В столбце Состояние для каждой из подпапок выберите значение Замаскировано.

Создание рабочей области вручную

  1. Определите папки, необходимые для работы.

    1. Откройте Visual Studio и подключитесь к командному проекту.

      Дополнительные сведения см. в разделе Подключение и доступ к командным проектам на сервере Team Foundation Server.

    2. В командном обозревателе щелкните элемент Система управления версиями.

      Примечание

      Если рабочая область не создана, она будет создана автоматически и получит имя, совпадающее с именем компьютера.Рабочая область появится в списке Рабочая область на панели инструментов обозревателя управления исходным кодом.

    3. Просмотрите список папок в обозревателе управления исходным кодом и найдите папки и подпапки, необходимые для работы.

  2. Создайте рабочую область.

    1. В меню Файл выберите команду Система управления версиями, а затем команду Рабочие области.

    2. В диалоговом окне Управление рабочими областями нажмите кнопку Добавить.

      Примечание

      Можно также щелкнуть рабочую область по умолчанию и выбрать команду Изменить, если требуется повторно использовать рабочую область по умолчанию.

    3. В диалоговом окне Добавить в рабочую область введите имя рабочей области.

  3. Для каждой папки, которую требуется сопоставить, выполните следующие действия.

    1. В разделе Рабочие папки в столбце Папка системы управления версиями выберите первую пустую строку и щелкните многоточие (…).

    2. В диалоговом окне Поиск папки выберите папку на сервере, содержащую файлы, с которыми необходимо работать, и нажмите кнопку ОК.

    3. (Необязательно.) Если требуется сопоставить только часть подпапок в папке, добавьте эту папку в одну строку, а все подпапки, не требующие сопоставления, — в последующие строки. В столбце Состояние для каждой из подпапок выберите значение Замаскировано.

    4. В разделе Рабочие папки в столбце Локальная папка выберите первую пустую строку и щелкните многоточие (…).

    5. В диалоговом окне Поиск папки выберите локальную папку, в которую необходимо скопировать файлы.

      Важно!

      Работать будет проще, если поддерживать структуру локальных папок максимально близкой к структуре папок на сервере.Соблюдать это правило особенно важно, если часто используется командная строка.Пример см. на рисунке Терминология рабочих областей.

    6. (Необязательно.) Щелкните Создать новую папку и введите имя новой папки, в которой будут храниться локальные копии.

      Совет

      С сопоставлениями рабочей области будет работать проще, если использовать для локальных папок короткие имена.

    7. Нажмите кнопку ОК.

Использование нескольких рабочих областей для работы с несколькими ветвями

Как правило, несколько рабочих областей создаются для одновременной работы над двумя версиями программного обеспечения. Например, можно работать над обновлением версии 2.0 и разрабатывать версию 3.0. Создание отдельных рабочих областей позволяет изолировать файлы и следить за тем, чтобы работа все время велась над нужной версией.

Совет

Кроме того, несколько рабочих областей можно использовать при работе над двумя областями в одной ветви или базе кода.

Чтобы создать несколько рабочих областей, необходимо создать каждую из них, воспользовавшись приведенной выше процедурой Create a workspace manually.

На этом рисунке показано, что локальный пользователь создал рабочую область для ветви FeatureTeamA, в которой находится новая разрабатываемая версия, и рабочую область для ветви Version2, требующей обновления.

Две рабочие области, сопоставленные с двумя локальными папками

При создании отдельных рабочих областей для каждой ветви файлы каждой ветви можно отображать в обозревателе управления исходным кодом. Чтобы отобразить файлы, сопоставленные той или иной рабочей области, откройте список Рабочая область и выберите в нем имя рабочей области. Список папок и файлов изменится таким образом, чтобы были доступны только элементы указанной рабочей области, а элементы другой рабочей области доступны не были.

Например, на следующем рисунке показаны папки и файлы из рабочей области TeamA. В области Папки видно, что серверная папка, сопоставленная рабочей области TeamA, включена, а серверная папка Version2, не сопоставленная этой рабочей области, отключена.

Выбранная рабочая область с сопоставленными папками

  1. TeamA — текущая рабочая область.

  2. Доступны только папки или ветви, сопоставленные рабочей области TeamA.

При использовании отдельных рабочих областей с помощью окна Ожидающие изменения также легко понять, какие изменения внесены в ту или иную ветвь. Чтобы открыть это окно, отройте Обозреватель решений, щелкните проект правой кнопкой мыши и выберите команду Просмотреть ожидающие изменения. В окне Ожидающие изменения откройте список Рабочая область и выберите ту или иную рабочую область, чтобы отобразить ожидающие изменения, относящиеся именно к этой области.

Ожидающие изменения в выбранной рабочей области

Устранение распространенных неполадок

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

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

Почему некоторые функции недоступны?

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

Почему в рабочей области имеются различные сопоставления?

При добавлении файлов в систему управления версиями без создания рабочей области вручную фактически создается рабочая область по умолчанию, которая сопоставляет исходную папку с указанной серверной папкой. Аналогично при получении файлов без создания рабочей области вручную сопоставление между серверной папкой и указанной локальной папкой создается в рабочей области по умолчанию.

Например, на следующем рисунке показано, что пользователь добавил в систему управления версиями решение Solution1 и указал серверную папку для сохранения этого решения. Добавляя решение, пользователь создал сопоставление между локальной папкой, из которой добавлялось решение, и серверной папкой. Это сопоставление связано с рабочей областью пользователя по умолчанию, имя которой совпадает с именем компьютера пользователя.

Впоследствии пользователь получил файлы из другого проекта, добавленные в систему управления версиями другим пользователем. Когда первый пользователь указывал локальную папку для копирования файлов, было создано сопоставление между сервером и этой локальной папкой. Это сопоставление также связано с рабочей область пользователя по умолчанию.

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

Сопоставление с несколькими локальными папками.

Сочетание сопоставлений локальных папок

  1. Локальная папка, из которой пользователь добавлял файлы.

  2. Локальная папка, в которую пользователь скопировал файлы с помощью операции Get.

См. также

Задачи

Добавление файлов в систему управления версиями

Получение исходного кода для командного проекта

Другие ресурсы

Использование управления версиями

Журнал изменений

Дата

Журнал

Причина

Август 2010

Добавлены сведения о сложных рабочих областях и устранении неполадок.

Улучшение информации.