Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Управление версиями.doc
Скачиваний:
31
Добавлен:
03.04.2015
Размер:
346.62 Кб
Скачать

3. Основные понятия, операции и инструменты системы управления версиями

3.1. Рабочая область

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

3.2. Обозреватель управления исходным кодом

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

1. Просмотр командных проектов и рабочих областей, чтобы определить, какие из них находятся на сервере Team Foundation (подсистема контроля версий).

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

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

4. Отмена и возврат ожидающих изменений.

5. Определение наличия в рабочей области на локальном компьютере копии последней версии элемента, согласованной с репозиторием.

6. Получение последних или конкретных версий папок и файлов.

7. Извлечение папок и файлов из репозитория для изменения.

8. Блокировка и разблокировка папок и файлов.

9. Удаление, отмена удаления, переименование и перемещение папок и файлов.

10. Устранение конфликтов управления версиями.

11. Включение элементов системы управления версиями в набор отложенных изменений.

12. Просмотр журнала, связанного с папками и файлами системы управления версиями.

13. Сравнение версий папок и файлов для выявления различий межу папками и текстами файлов различных версий.

14. Ветвление и слияние командных проектов, папок и файлов, хранящихся в системе управления версиями.

15. Добавление меток к наборам изменений.

16. Просмотр свойств папок и файлов.

3.1. Основные операции системы управления версиями

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

Рис. 2. Схема соответствия локальных папок, рабочих областей и серверных папок.

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

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

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

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

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

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

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

2. Извлекать файлы для изменения.

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

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

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

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

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

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

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

Теперь подробнее рассмотрим технику выполнения этих операций.

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

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

а) в меню "Сервис" Visual Studio выберите пункт "Подключиться к Team Foundation Server";

б) в диалоговом окне "Подключение к Team Project" нажмите кнопку "Серверы.";

в) в диалоговом окне "Добавление и удаление Team Foundation Server" нажмите кнопку "Добавить";

г) в диалоговом окне "Добавление Team Foundation Server" введите имя или URL-адрес сервера;

д) при вводе имени сервера в поле "Предварительный просмотр" автоматически отображается формат URL-адреса, например: http:// Имя_сервера:порт/tfs, где "Имя_сервера" — это имя компьютера-сервера, на котором размещается Team Foundation Server, порт — порт, используемый Team Foundation Server; значение по умолчанию — 8080. Если сервер использует другой номер порта, в URL-адресе необходимо указать номер этого порта; tfs — путь по умолчанию к коллекциям проектов, хранящимся на сервере. Если в вашей группе используется другой путь, введите его в поле Путь.

е) Убедитесь в правильности URL-адреса, нажмите два раза кнопку "ОК", а затем нажмите кнопку "Закрыть";

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

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

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

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

5. В диалоговом окне "Поиск папки" укажите расположение локальных копий. Например, можно указать папку, выделенную Вами для групповых проектов на Вашем сетевом диске.

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

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

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

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

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

Рис. 3. Схема сопоставления папок рабочей области.

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

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